uimusic

来自于:开发者立即使用

playMusic showUI closeUI addEventListener addMusic selectMusic getCurrentPlayer stopMusic musicPlayPause musicPrevious musicNext

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码供您参考。

概述

uimusic 封装了带音乐界面的音乐播放功能。

固件要求

Android:4.0及以上 iOS:8.0及以上

模块接口

playMusic

播放本地视频、网络音乐

playMusic({params}, callback(ret, err))

params

musics:

  • 类型: 数组对象
  • 描述:(必填项)模块的位置及尺寸
  • 内部字段:
  1. [{
  2. name: 0, //(必填项)字符串;音乐名称
  3. filename: 0, //(必填项)字符串;音乐播放地址,支持http:// fs:// widget://
  4. singer: 320, //(必填项)字符串;演唱者
  5. icon: 250 //(必填项)字符串;音乐图片 图片像素300*300为佳,支持http:// fs:// widget://,
  6. background : "#800080", //背景颜色代码
  7. other : 2, //自定义属性值,可以是你自己的主键id
  8. fenxiangSum : 55,//分享数量
  9. downmusicSum : 66,//下载数量
  10. pinglunSum : 233,//评论数量
  11. },
  12. {
  13. name: 0, //(必填项)字符串;音乐名称
  14. filename: 0, //(必填项)字符串;音乐播放地址,支持http:// fs:// widget://
  15. singer: 320, //(必填项)字符串;演唱者
  16. icon: 250, //(必填项)字符串;音乐图片 图片像素300*300为佳,支持http:// fs:// widget://
  17. background : "#800080", //背景颜色代码
  18. other : 2, //自定义属性值,可以是你自己的主键id
  19. fenxiangSum : 55,//分享数量
  20. downmusicSum : 66,//下载数量
  21. pinglunSum : 233,//评论数量
  22. }]

ttf:

  • 类型:字符串
  • 描述:(可选项)字体文件(仅支持widget://路径)。

downmusicBtn:

  • 类型:布尔型
  • 描述:(可选项)是否显示下载按钮。
  • 默认值: true

fenxiangBtn:

  • 类型:布尔型
  • 描述:(可选项)是否显示分享按钮。
  • 默认值: true

pinglunBtn:

  • 类型:布尔型
  • 描述:(可选项)是否显示评论按钮。
  • 默认值: true

nameTextSize:

  • 类型:数值型
  • 描述:(可选项)歌曲名称字体大小。
  • 默认值: 20

singerTextSize:

  • 类型:数值型
  • 描述:(可选项)歌曲演唱者字体大小。
  • 默认值: 10

isShowUi:

  • 类型:布尔型
  • 描述:(可选项)是否默认打开UI界面。
  • 默认值: true

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var demo = api.require('uimusic');
  2. demo.playMusic({
  3. musics: [{
  4. name: "小苹果1(在线)",
  5. filename: "http://7xwc0t.com1.z0.glb.clouddn.com/apicloud/619a3762a2be7650c4345c1d7c23575e.mp3",
  6. singer: "筷子兄弟",
  7. icon: "http://7xwc0t.com1.z0.glb.clouddn.com/apicloud/3a3d926564ab4c5b2292744d5ffb0ec6.jpg",
  8. other : 1,
  9. fenxiangSum : 55,
  10. downmusicSum : 66,
  11. pinglunSum : 233,
  12. background : "#800080"
  13. },
  14. {
  15. name: "小苹果2(在线)",
  16. filename: "http://7xwc0t.com1.z0.glb.clouddn.com/apicloud/28643b3e661abe4dfb3da33f2d1e2b59.mp3",
  17. singer: "筷子兄弟",
  18. icon: "http://7xwc0t.com1.z0.glb.clouddn.com/apicloud/7c23cd15fc8fe841ab20f6c87d47ae59.jpg",
  19. other : 2,
  20. fenxiangSum : 55,
  21. downmusicSum : 66,
  22. pinglunSum : 233,
  23. background : "#800080"
  24. },
  25. {
  26. name: "小苹果3(本地)",
  27. filename: "widget://res/MP3s/120125029.mp3",
  28. singer: "筷子兄弟",
  29. icon: "widget://res/Images/1.jpg",
  30. other : 3,
  31. fenxiangSum : 55,
  32. downmusicSum : 66,
  33. pinglunSum : 233,
  34. background : "#800080"
  35. },
  36. {
  37. name: "传奇4(本地)",
  38. filename: "widget://res/MP3s/10405520.mp3",
  39. singer: "王菲",
  40. icon: "widget://res/Images/nanquan.jpg",
  41. other : 4,
  42. fenxiangSum : 55,
  43. downmusicSum : 66,
  44. pinglunSum : 233,
  45. background : "#800080"
  46. }],
  47. ttf : "widget://res/UKIJTor.ttf",
  48. downmusicBtn : true,
  49. fenxiangBtn : false,
  50. pinglunBtn : true,
  51. nameTextSize : 20,
  52. singerTextSize : 10
  53. },
  54. function(ret, err) {
  55. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

showUI

显示播放界面

showUI(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var obj = api.require('uimusic');
  2. obj.showUI(function(ret, err) {
  3. alert(JSON.stringify(ret));
  4. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

closeUI

隐藏播放界面

closeUI(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var obj = api.require('uimusic');
  2. obj.closeUI(function(ret, err) {
  3. alert(JSON.stringify(ret));
  4. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

addEventListener

音乐界面按钮监听

addEventListener({params}, callback(ret, err))

params

name:

  • 类型:字符串
  • 描述:(必填项)监听事件类型>>隐藏播放器界面:closeui 评论按钮:pinglun 分享按钮:fenxiang 下载按钮:downmusic ```

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. index : 0, //当前播放音乐数组索引序号 (仅评论,分享,下载才返回)
  4. title : '', //当前音乐标题
  5. url : '', //当前音乐播放路径
  6. pic : '', //当前音乐图片
  7. other : '' //当前音乐自定义属性值(可以是自己的主键id)
  8. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var demo = api.require('uimusic');
  2. demo.addEventListener({
  3. name: "closeui"
  4. },
  5. function(ret, err) {
  6. demo.closeUI();
  7. alert("closeui>>addEventListener|" + JSON.stringify(ret));
  8. });
  9. demo.addEventListener({
  10. name: "pinglun"
  11. },
  12. function(ret, err) {
  13. demo.closeUI();
  14. alert("pinglun>>addEventListener|" + JSON.stringify(ret));
  15. });
  16. demo.addEventListener({
  17. name: "fenxiang"
  18. },
  19. function(ret, err) {
  20. demo.closeUI();
  21. alert("fenxiang>>addEventListener|" + JSON.stringify(ret));
  22. });
  23. demo.addEventListener({
  24. name: "downmusic"
  25. },
  26. function(ret, err) {
  27. demo.closeUI();
  28. alert("downmusic>>addEventListener|" + JSON.stringify(ret));
  29. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

addMusic

添加播放音乐

addEventListener({params}, callback(ret, err))

params

data:

  • 类型:json对象
  • 描述:(必填项)待播放音乐信息

    1. {
    2. name: 0, //(必填项)字符串;音乐名称
    3. filename: 0, //(必填项)字符串;音乐播放地址,支持http:// fs:// widget://
    4. singer: 320, //(必填项)字符串;演唱者
    5. icon: 250, //(必填项)字符串;音乐图片 图片像素300*300为佳,支持http:// fs:// widget://
    6. background : "#800080", //背景颜色代码
    7. other : 2, //自定义属性值,可以是你自己的主键id
    8. fenxiangSum : 55,//分享数量
    9. downmusicSum : 66,//下载数量
    10. pinglunSum : 233,//评论数量
    11. }

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. index : 0, //当前播放音乐数组索引序号 (仅评论,分享,下载才返回)
  4. title : '', //当前音乐标题
  5. url : '', //当前音乐播放路径
  6. pic : '', //当前音乐图片
  7. other : '' //当前音乐自定义属性值(可以是自己的主键id)
  8. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var demo = api.require('uimusic');
  2. demo.addMusic({
  3. data : {
  4. name : "小苹果3666(widget://)",
  5. filename : "widget://res/MP3s/cemo111.mp3",
  6. singer : "666666",
  7. icon : "widget://res/Images/1.jpg",
  8. other : 5,
  9. fenxiangSum : 3,
  10. downmusicSum : 33,
  11. pinglunSum : 44,
  12. background : "#DDA0DD"
  13. }
  14. }, function(ret, err) {
  15. alert("addMusic|" + JSON.stringify(ret));
  16. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

selectMusic

通过数组序号播放音乐

selectMusic({params}, callback(ret, err))

params

index:

  • 类型:数字型
  • 描述:(必填项)待播放音乐信息的序号(备注:other传值时为非必填项)

other:

  • 类型:字符型
  • 描述:(必填项)自定义属性值,可以是自己的主键id(备注:index传值时为非必填项)

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. index : 0, //当前播放音乐数组索引序号 (仅评论,分享,下载才返回)
  4. title : '', //当前音乐标题
  5. url : '', //当前音乐播放路径
  6. pic : '', //当前音乐图片
  7. other : '' //当前音乐自定义属性值(可以是自己的主键id)
  8. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var demo = api.require('uimusic');
  2. demo.selectMusic({
  3. index : 3
  4. }, function(ret, err) {
  5. alert("selectMusic|" + JSON.stringify(ret));
  6. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

getCurrentPlayer

获取当前正在播放的音乐

getCurrentPlayer(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true, //布尔型;true||false
  3. index : 0, //当前播放音乐数组索引序号 (仅评论,分享,下载才返回)
  4. title : '', //当前音乐标题
  5. url : '', //当前音乐播放路径
  6. pic : '', //当前音乐图片
  7. other : '', //当前音乐自定义属性值(可以是自己的主键id)
  8. duration : 11, //当前音乐时长
  9. currentTime : 0 //当前音乐已经播放时间
  10. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var demo = api.require('uimusic');
  2. demo.getCurrentPlayer(function(ret, err) {
  3. alert("getCurrentPlayer|" + JSON.stringify(ret));
  4. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

stopMusic

停止正在播放的音乐,重新播放需要重新初始化播放器,执行退出应用前请执行该接口

stopMusic(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var demo = api.require('uimusic');
  2. demo.stopMusic(function(ret, err) {
  3. alert("stopMusic|" + JSON.stringify(ret));
  4. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

musicPlayPause

暂停或者继续播放音乐

musicPlayPause(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var obj = api.require('uimusic');
  2. obj.musicPlayPause(function(ret, err) {
  3. alert(JSON.stringify(ret));
  4. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

musicPrevious

切换上一曲播放

musicPrevious(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var obj = api.require('uimusic');
  2. obj.musicPrevious(function(ret, err) {
  3. alert(JSON.stringify(ret));
  4. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本

musicNext

切换下一曲播放

musicNext(callback(ret, err))

callback(ret, err)

ret:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. status: true //布尔型;true||false
  3. }

err:

  • 类型:JSON对象
  • 内部字段:
  1. {
  2. msg: ""
  3. }

示例代码

  1. var obj = api.require('uimusic');
  2. obj.musicNext(function(ret, err) {
  3. alert(JSON.stringify(ret));
  4. });

可用性

iOS、Android系统

可提供的1.0.0及更高版本