为帮助用户更好更快的使用插件,论坛维护了一个示例,示例中包含示例代码供您参考。
musicPlayer封装了原生音乐播器,自带大小界面音乐,同时支持iOS锁屏界面控制,Android通知栏控制音乐播放等功能。
Android:4.1及以上 iOS:8.0及以上
播放器状态监听
addEventListener(callback(ret))
ret:
{
    status: true,      //布尔型;true||false
    evenType : '',   //播放器事件
        //Android: onPrepared onBufferStart onBufferEnd onSeekComplete
        //iOS : onBuffering onSeeking onPlaying onError onCompletion
onError onCompletion
    musicInfo : {},
}
var demo = api.require('musicPlayer');
demo.addEventListener(function (ret, err) {
    //api.alert({msg: JSON.stringify(ret)});
});
iOS、Android系统
可提供的1.0.4及更高版本
开启音乐播放服务
startService({params}, callback(ret))
musics:
[{
    name: 0,   //(必填项)字符串;音乐名称
    filename: 0,   //(必填项)字符串;音乐播放地址,支持http:// fs:// widget://
    singer: 320, //(必填项)字符串;演唱者
    icon: 250  //(必填项)字符串;音乐图片 图片像素300*300为最佳,支持http:// fs:// widget://,
    background : "#800080", //背景颜色代码
    other : 2, //自定义属性值,可以是你自己的主键id
    fenxiangSum : 55,//分享数量
    downmusicSum : 66,//下载数量
    pinglunSum : 233,//评论数量
},
{
    name: 0,   //(必填项)字符串;音乐名称
    filename: 0,   //(必填项)字符串;音乐播放地址,支持http:// fs:// widget://
    singer: 320, //(必填项)字符串;演唱者
    icon: 250,  //(必填项)字符串;音乐图片 图片像素300*300为最佳,支持http:// fs:// widget://
    background : "#800080", //背景颜色代码
    other : 2, //自定义属性值,可以是你自己的主键id
    fenxiangSum : 55,//分享数量
    downmusicSum : 66,//下载数量
    pinglunSum : 233,//评论数量
}]
notifyStyle:
{
    backgroundColor : '#FF3E96',//UI背景色
    songNameStyle : {
        smallColor : '#FFE4C4',
        smallSize : 16,
        bigColor : '#FFE4C4',
        bigSize : 18
    },
    songSingerStyle : {
        smallColor : '#FFE4C4',
        smallSize : 10,
        bigColor : '#FFE4C4',
        bigSize : 8
    },
    ticker : ''//通知栏提示
}
currentIndex:
ret:
{
    status: true,      //布尔型;true||false
}
err:
{
    msg: ''
}
var demo = api.require('musicPlayer');
demo.startService({
    musics: [{
        name: "魏心雨",
        filename: "https://sharefs.yun.kugou.com/202010222113/8c36e16ae35617c8855b89f797742a4e/G189/M05/06/15/_Q0DAF5afxmAYsQZADLMf64OiWA402.mp3",
        singer: "念人心",
        icon: "http://7xwc0t.com1.z0.glb.clouddn.com/apicloud/3a3d926564ab4c5b2292744d5ffb0ec6.jpg",
        other: 1,
        fenxiangSum: 43,
        downmusicSum: 12,
        pinglunSum: 45,
        background: "http://7xwc0t.com1.z0.glb.clouddn.com/apicloud/3a3d926564ab4c5b2292744d5ffb0ec6.jpg"
    }, {
        name: "魏心雨(本地)",
        filename: "widget://res/MP3s/lianrenxin.mp3",
        singer: "念人心",
        icon: "http://7xwc0t.com1.z0.glb.clouddn.com/apicloud/7c23cd15fc8fe841ab20f6c87d47ae59.jpg",
        other: 2,
        fenxiangSum: 55,
        downmusicSum: 66,
        pinglunSum: 233,
        background: "#800080"
    }, {
        name: "小苹果3(widget://)",
        filename: "http://7xwc0t.com1.z0.glb.clouddn.com/apicloud/28643b3e661abe4dfb3da33f2d1e2b59.mp3",
        singer: "筷子兄弟3",
        icon: "widget://res/Images/1.jpg",
        other: 3,
        fenxiangSum: 123,
        downmusicSum: 889,
        pinglunSum: 233,
        background: "#5F9EA0"
    }, {
        name: "传奇4(fs://)",
        filename: "widget://res/MP3s/shangxuege.mp3",
        singer: "王菲1",
        icon: "widget://res/Images/nanquan@2x.jpg",
        other: 4,
        fenxiangSum: 123,
        downmusicSum: 889,
        pinglunSum: 233,
        background: "#00FF7F"
    }, {
        name: "传奇4(fs://)",
        filename: "widget://res/MP3s/cemo111.mp3",
        singer: "王菲2",
        icon: "http://rm.djkk.com/upload/xingxiang/2008/2008-6/1311407.jpg",
        other: 5,
        fenxiangSum: 123,
        downmusicSum: 889,
        pinglunSum: 233,
        background: "#00FF7F"
    }]
}, function (ret, err) {
    //api.alert({msg: JSON.stringify(ret)});
});
iOS、Android系统
可提供的1.0.1及更高版本
停止音乐播放服务
stopService(callback(ret))
ret:
{
    status: true,      //布尔型;true||false
}
err:
{
    msg: ''
}
var demo = api.require('musicPlayer');
demo.stopService(function(ret, err){
    api.alert({msg: JSON.stringify(ret)});
});
iOS、Android系统
可提供的1.0.1及更高版本
添加音乐数据
addMusicData({params}, callback(ret, err))
data:
[{
    name: '',   //(必填项)字符串;音乐名称
    filename: '',   //(必填项)字符串;音乐播放地址,支持http:// fs:// widget://
    singer: '', //(必填项)字符串;演唱者
    icon: '',  //(必填项)字符串;音乐图片 图片像素300*300为最佳,支持http:// fs:// widget://
    background : "#800080", //背景颜色代码
    other : 2, //自定义属性值,可以是你自己的主键id
    fenxiangSum : 55,//分享数量
    downmusicSum : 66,//下载数量
    pinglunSum : 233,//评论数量
}]
ret:
{
    status: true,   //布尔型;true||false
}
err:
{
    msg: ""
}
var demo = api.require('musicPlayer');
demo.addMusicData({
    data : [{
        name : "小苹果3666(widget://)",
        filename : "widget://res/MP3s/cemo111.mp3",
        singer : "666666",
        icon : "widget://res/Images/1.jpg",
        other : 5,
        fenxiangSum : 3,
        downmusicSum : 33,
        pinglunSum : 44,
        background : "#DDA0DD"
    }]
}, function(ret, err) {
    alert("addMusic|" + JSON.stringify(ret));
});
iOS、Android系统
可提供的1.0.1及更高版本
指定播放音乐
selectMusicItem({params}, callback(ret,err))
index:
other:
ret:
{
    status: true,      //布尔型;true|false
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.selectMusicItem({
    index : 2
},function(ret,err){
    alert(JSON.stringify(ret,err));
});
iOS、Android系统
可提供的1.0.1及更高版本
获取正在播放的音频信息
getCurrentMusic()
{
    status: true,      //布尔型;true|false
    msg : '',
    data : {}
}
var demo = api.require('musicPlayer');
var ret = demo.getCurrentMusic();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
获取视频总进度
getDuration()
{
    status: true,      //布尔型;true|false
    msg : '',
    duration : ''
}
var demo = api.require('musicPlayer');
var ret = demo.getDuration();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
获取已经播放进度
getCurrentPosition()
{
    status: true,      //布尔型;true|false
    msg : '',
    currentPosition : ''
}
var demo = api.require('musicPlayer');
var ret = demo.getCurrentPosition();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
是否正在播放音频
isPlaying()
{
    status: true,      //布尔型;true|false
    msg : '',
    isPlaying : ''
}
var demo = api.require('musicPlayer');
var ret = demo.isPlaying();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
切换播放模式
playerMode()
{
    status: true,      //布尔型;true|false
    msg : '',
    mode : 2
}
var demo = api.require('musicPlayer');
var ret = demo.playerMode();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
播放上一条
playerPre()
{
    status: true,      //布尔型;true|false
    msg : '',
}
var demo = api.require('musicPlayer');
var ret = demo.playerPre();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
暂停后播放
playerPlay()
{
    status: true,      //布尔型;true|false
    msg : '',
}
var demo = api.require('musicPlayer');
var ret = demo.playerPlay();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
暂停播放
playerPause()
{
    status: true,      //布尔型;true|false
    msg : '',
}
var demo = api.require('musicPlayer');
var ret = demo.playerPause();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
播放下一条
playerNext()
{
    status: true,      //布尔型;true|false
    msg : '',
}
var demo = api.require('musicPlayer');
var ret = demo.playerNext();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
随机播放
playerRandom()
{
    status: true,      //布尔型;true|false
    msg : '',
}
var demo = api.require('musicPlayer');
var ret = demo.playerRandom();
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
设置播放进度
playerSeek({params})
seek:
{
    status: true,      //布尔型;true|false
    msg : '',
}
var demo = api.require('musicPlayer');
var ret = demo.playerSeek({
    seek : 0
});
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.1及更高版本
设置倍速
playerSpeed({params})
speed:
{
    status: true,      //布尔型;true|false
    msg : '',
}
var demo = api.require('musicPlayer');
var ret = demo.playerSpeed({
    speed : 2.0
});
api.alert({msg: JSON.stringify(ret)});
iOS、Android系统
可提供的1.0.3及更高版本
打开全屏音乐播放界面(悬浮App最上层)
openMaxView({params}, callback(ret,err))
isShowMode:
isShowDownload:
isShowFenxiang:
isShowPinglun:
isShowSetting:
isShowDanmu:
nameTextSize:
nameTextColor:
singerTextSize:
singerTextColor:
backgroundColor:
ret:
{
    status : true,      //布尔型;true|false
    evenType : 'onShow',//onShow 界面打开事件
                    //onBack 返回按钮事件
                    //onClose 关闭按钮事件
                    //onSendDanmu 发送弹幕按钮事件
                    //onPlayerPlay 播放按钮事件
                    //onPlayerPause 暂停播放按钮事件
                    //onplayerMode 播放模式按钮事件
                    //onPlayerPre 播放上一个按钮事件
                    //onPlayerNext 播放下一个按钮事件
                    //onPlayerSetting 设置按钮事件
                    //onPinglun 评论按钮事件
                    //onDownload 下载按钮事件
                    //onShare 分享按钮事件
                    //onPlayerSeek 手动调节进度条事件
    seek : 0,
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.openMaxView({
    isShowDownload: true,
    isShowFenxiang: true,
    isShowPinglun: true,
    isShowDanmu: true,
    nameTextSize: 20,
    singerTextSize: 16,
}, function (ret, err) {
    //api.alert({msg: JSON.stringify(ret)});
});
iOS、Android系统
可提供的1.0.1及更高版本
隐藏全屏音乐播放界面
hideMaxView(callback(ret, err))
ret:
{
    status: true,      //布尔型;true||false
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.hideMaxView();
iOS、Android系统
可提供的1.0.1及更高版本
显示全屏音乐播放界面
showMaxView(callback(ret, err))
ret:
{
    status: true,      //布尔型;true
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.showMaxView();
iOS、Android系统
可提供的1.0.1及更高版本
关闭全屏音乐播放界面
closeMaxView(callback(ret, err))
ret:
{
    status: true,      //布尔型;true||false
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.closeMaxView();
iOS、Android系统
可提供的1.0.1及更高版本
发送一条弹幕信息
sendDanmu({params}, callback(ret, err))
text:
color:
ret:
{
    status: true   //布尔型;true||false
}
err:
{
    msg: ""
}
var demo = api.require('musicPlayer');
demo.sendDanmu({
    text : '测试2测试2测试2测试2',
    color : '#FF7F24'
},function(ret,err){
});
iOS、Android系统
可提供的1.0.1及更高版本
发送多条弹幕信息。
sendDanmuList({params}, callback(ret, err))
isLoop:
data:
[{
    text: '',   //(必填项)弹幕文字内容
    color: '',   //(可选项)弹幕文字显示颜色代码[默认值:#FFFAFA]
}]
ret:
{
    status: true   //布尔型;true||false
}
err:
{
    msg: ""
}
var obj = api.require('musicPlayer');
obj.sendDanmuList({
    data : [{
            text : '测试1',
            color : '#FF7F24'
        },{
            text : '测试2测试2测试2测试2',
            color : '#FF7F24'
        }],
}, function(ret, err) {
});
iOS、Android系统
可提供的1.0.1及更高版本
打开Min音乐播放界面(悬浮App最上层)
openMinView({params}, callback(ret,err))
rect:
{
    x: 0,   //(必填项)数字类型;插件左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
    y: 0,   //(必填项)数字类型;插件左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
    w: 320, //(必填项)数字类型;插件的宽度;默认值:手机屏幕的宽度
    h: 60  //(必填项)数字类型;插件的高度;默认值:手机屏幕的高度
}
isMaxFont:
fixedOn:
fixed:
isShowText:
nameTextSize:
nameTextColor:
singerTextSize:
singerTextColor:
backgroundColor:
ret:
{
    status : true,      //布尔型;true|false
    evenType : 'onShow',//onShow 界面打开事件
                    //onClick 界面单点事件
                    //onClose 关闭按钮事件
                    //onPlayerPlay 播放按钮事件
                    //onPlayerPause 暂停播放按钮事件
                    //onPlayerNext 播放下一个按钮事件
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.openMinView({
    nameTextSize: 10,
    singerTextSize: 8,
}, function (ret, err) {
    //api.alert({msg: JSON.stringify(ret)});
});
iOS、Android系统
可提供的1.0.1及更高版本
隐藏Min音乐播放界面
hideMinView(callback(ret, err))
ret:
{
    status: true,      //布尔型;true||false
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.hideMinView();
iOS、Android系统
可提供的1.0.1及更高版本
显示Min音乐播放界面
showMinView(callback(ret, err))
ret:
{
    status: true,      //布尔型;true
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.showMinView();
iOS、Android系统
可提供的1.0.1及更高版本
关闭Min音乐播放界面
closeMinView(callback(ret, err))
ret:
{
    status: true,      //布尔型;true||false
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.closeMinView();
iOS、Android系统
可提供的1.0.1及更高版本
打开底部按钮(不是App最上层)
openFootButton({params}, callback(ret,err))
rect:
{
    x: 0,   //(必填项)数字类型;插件左上角的 x 坐标(相对于所属的 Window 或 Frame);默认值:0
    y: 0,   //(必填项)数字类型;插件左上角的 y 坐标(相对于所属的 Window 或 Frame);默认值:0
    w: 320, //(必填项)数字类型;插件的宽度;默认值:手机屏幕的宽度
    h: 60  //(必填项)数字类型;插件的高度;默认值:手机屏幕的高度
}
fixedOn:
fixed:
backgroundColor:
ret:
{
    status : true,      //布尔型;true|false
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.openFootButton({
    rect: {
        w: 50,
        h: 80
    },
}, function (ret, err) {
    //api.alert({msg: JSON.stringify(ret)});
});
iOS、Android系统
可提供的1.0.1及更高版本
隐藏底部按钮
hideFootButton(callback(ret, err))
ret:
{
    status: true,      //布尔型;true||false
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.hideFootButton();
iOS、Android系统
可提供的1.0.1及更高版本
显示底部按钮
showFootButton(callback(ret, err))
ret:
{
    status: true,      //布尔型;true
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.showFootButton();
iOS、Android系统
可提供的1.0.1及更高版本
关闭底部按钮
closeFootButton(callback(ret,err))
ret:
{
    status : true,      //布尔型;true|false
}
err:
{
    msg : ''
}
var demo = api.require('musicPlayer');
demo.closeFootButton(function (ret, err) {
    //api.alert({msg: JSON.stringify(ret)});
});
iOS、Android系统
可提供的1.0.1及更高版本