oxMusicPlayer

Method

论坛示例

为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码demo、知识点讲解、注意事项等,供您参考。

概述

本模块封装了oxMusicPlayer 音乐,音频播放器

模块概述

oxMusicPlayer音频播放器 播放音乐 有声小说,支持缓存 播放模式 控件自定义

android exoPlayer内核, ios ijk 内核

模块接口

init

初始化

   var ox = api.require('oxMusicPlayer');
   ox.init({
              playMode:3,//1单曲循环2随机播放3列表循环4顺序播放
              openCache:true,//是否开启缓存
              openNotification:true//是否开启显示状态栏通知
            });

可用性

Android,ios系统

可提供的1.0.0

addEventListener

公用监听接口

示例代码

var ox = api.require('oxMusicPlayer');
      //code事件
      //播放状态 播放错误-1 正在播放0 暂停1 结束2 缓冲中3
      //播放中返回 反冲进度 播放进度4 音频切换返回当前音频数据5
      //自定义控件事件要与控件定义的code 保持一致 不能重复
      ox.addEventListener(function(ret) {
          var code = ret.code; 
      });

可用性

Android,ios系统

可提供的1.0.0

openFullView

打开大窗界面

示例代码

var ox = api.require('oxMusicPlayer');

var data = [{
    "id": 1,
    "title": "在那之后",
    "artist": "缪礼丞 / Mikey-18 / Tiko",
    "albumName": "--",
    "pic": "http://p2.music.126.net/ZuJ6QoksVgpSzNzUxjk5XA==/109951168002270456.jpg",
    "music_url": "http://music.163.com/song/media/outer/url?id=1992695240.mp3",
    "description": "如果说当时分开是巧合..."
  }
];
var closeBtn = {
    type: 'component',
    x: 10,
    y: 40,
    w: 25,
    h: 25,
    radius: 5,
    backgroundColor: '#01000000',
    alpha: 0.1,
    border: 0,
    borderColor: '#01000000',
    code: 26,
    hidden: false,
    animation: 0,
    pics: [{ path: 'widget://image/close.png', x: 0, y: 0, w: 25, h: 25, code: 261 }],
    texts: []
  }; //自定义控件
    var cover = {
    type: 'cover',
    hidden: false,
    x: w / 2 - 140,
    y: 80,
    w: 280,
    h: 280,
    radius: 10,
        code:24
  }; //封面
  var danmaku = {
        type: 'danmaku',
        hidden: true,
        x: 0,
        y: 80,
        w: w,
        h: 240,
        code:25
    }; //封面
  var title = {
    type: 'title',
    hidden: false,
    x: 45,
    y: 350,
    w: w - 90,
    h: 60,
    textColor: '#FFFFFF',
    textSize: 18
  }; //标题
  var artist = {
    type: 'artist',
    hidden: false,
    x: 45,
    y: 370,
    w: w - 90,
    h: 60,
    textColor: '#E0E0E0',
    textSize: 14
  }; //作者
  var progress = {
    type: 'progress',
    hidden: false,
    x: 45,
    y: 400,
    w: w - 90,
    h: 60,
    progressColor:'#50CDD4',
    bufferColor:'#FFFFFF',
    progressThumb:'widget://image/thumb.png'
        
  }; //进度条位置
  var playPause = {
    type: 'playPause',
    hidden: false,
    x: w / 2 - 30,
    y: 460,
    w: 60,
    h: 60
  }; //位置
var components = [closeBtn, progress, playPause, cover,danmaku,title,artist];
ox.openFullView({
        fixedOn: api.frameName,
        rect: { x: 0, y: 0, w: w, h: h },
        fixed: true,
        components: components,//自定义控件
        backgroundColor: '#607D8B',//背景色
        currentIndex: 0,//首次打开播放音频index
        radius: 0,//界面圆角
        data: data//音频数据
      });

可用性

Android,ios系统

可提供的1.0.0

closeFullView

关闭大窗界面

示例代码

var ox = api.require('oxMusicPlayer');
ox.closeFullView();

可用性

Android,ios系统

可提供的1.0.0

hideFullView

隐藏大窗界面

示例代码

var ox = api.require('oxMusicPlayer');
ox.hideFullView();

可用性

Android,ios系统

可提供的1.0.0

showFullView

显示大窗界面

示例代码

var ox = api.require('oxMusicPlayer');
ox.showFullView();

可用性

Android,ios系统

可提供的1.0.0

openSmallView

打开小窗界面

示例代码

var ox = api.require('oxMusicPlayer');

自定义控件 data数据参考 大窗界面
ox.openSmallView({
        fixedOn: api.frameName,
        rect: { x: 0, y: 0, w: w, h: h },
        fixed: true,
        components: components,//自定义控件
        backgroundColor: '#607D8B',//背景色
        currentIndex: 0,//首次打开播放音频index
        radius: 0,//界面圆角
        data: data//音频数据
      });

可用性

Android,ios系统

可提供的1.0.0

closeSmallView

关闭小窗界面

示例代码

var ox = api.require('oxMusicPlayer');

ox.closeSmallView();

可用性

Android,ios系统

可提供的1.0.0

hideSmallView

隐藏小窗界面

示例代码

var ox = api.require('oxMusicPlayer');

ox.hideSmallView();

可用性

Android,ios系统

可提供的1.0.0

showSmallView

显示小窗界面

示例代码

var ox = api.require('oxMusicPlayer');

ox.showSmallView();

可用性

Android,ios系统

可提供的1.0.0

openWithoutView

打开音乐播放 无界面

示例代码

var ox = api.require('oxMusicPlayer');

 ox.openWithoutView({
                currentIndex: 0,
                data: data
            });

可用性

Android,ios系统

可提供的1.0.0

stop

关闭播放器包括后台运行

示例代码

var ox = api.require('oxMusicPlayer');

ox.stop();

可用性

Android,ios系统

可提供的1.0.0

pause

暂停播放

示例代码

var ox = api.require('oxMusicPlayer');

ox.pause();

可用性

Android,ios系统

可提供的1.0.0

resume

恢复播放

示例代码

var ox = api.require('oxMusicPlayer');

ox.resume();

可用性

Android,ios系统

可提供的1.0.0

next

下一首

示例代码

var ox = api.require('oxMusicPlayer');

ox.next();

可用性

Android,ios系统

可提供的1.0.0

pre

上一首

示例代码

var ox = api.require('oxMusicPlayer');

ox.pre();

可用性

Android,ios系统

可提供的1.0.0

forward

前进15秒

示例代码

var ox = api.require('oxMusicPlayer');

ox.forward({ms:15000});

可用性

Android,ios系统

可提供的1.0.0

backup

后退15秒

示例代码

var ox = api.require('oxMusicPlayer');

ox.backup({ms:15000});

可用性

Android,ios系统

可提供的1.0.0

seekTo

划动到固定位置播放

示例代码

var ox = api.require('oxMusicPlayer');

ox.seekTo({ms:15000});

可用性

Android,ios系统

可提供的1.0.0

setVolume

设置音量

示例代码

var ox = api.require('oxMusicPlayer');

ox.setVolume({volume:0.5});

可用性

Android,ios系统

可提供的1.0.0

getVolume

获取当前音量

示例代码

var ox = api.require('oxMusicPlayer');

ox.getVolume(function(ret) {
  var volume = ret.volume;
});

可用性

Android,ios系统

可提供的1.0.0

setSpeed

设置倍速

示例代码

var ox = api.require('oxMusicPlayer');

ox.setSpeed({speed:2});

可用性

Android,ios系统

可提供的1.0.0

getSpeed

获取当前倍速

示例代码

var ox = api.require('oxMusicPlayer');

ox.getSpeed(function(ret) {
  var speed = ret.speed;
});

可用性

Android,ios系统

可提供的1.0.0

setPlayMode

设置播放模式

示例代码

var ox = api.require('oxMusicPlayer');
//1单曲循环2随机播放3列表循环4顺序播放
ox.setPlayMode({playMode:2});

可用性

Android,ios系统

可提供的1.0.0

getPlayMode

获取当前倍速

示例代码

var ox = api.require('oxMusicPlayer');

ox.getPlayMode(function(ret) {
  //1单曲循环2随机播放3列表循环4顺序播放
  var playMode = ret.playModed;
});

可用性

Android,ios系统

可提供的1.0.0

playIndex

播放index索引音频

示例代码

var ox = api.require('oxMusicPlayer');
ox.playIndex({index:2});

可用性

Android,ios系统

可提供的1.0.0

getCurrentInfo

获取当前播放音频数据包括索引

示例代码

var ox = api.require('oxMusicPlayer');
ox.getCurrentInfo(function(ret) {
  var data = ret.data;
  var index = ret.index;
});

可用性

Android,ios系统

可提供的1.0.0

addDatasBefore

在原数据前加音频数据

示例代码

[{
    "id": 1,
    "title": "在那之后",
    "artist": "缪礼丞 / Mikey-18 / Tiko",
    "albumName": "--",
    "pic": "http://p2.music.126.net/ZuJ6QoksVgpSzNzUxjk5XA==/109951168002270456.jpg",
    "music_url": "http://music.163.com/song/media/outer/url?id=1992695240.mp3",
    "description": "如果说当时分开是巧合..."
  }
]
var ox = api.require('oxMusicPlayer');
ox.addDatasBefore({data:data},function(ret) {
  var code = ret.code;
  //0成功 -1失败
});

可用性

Android,ios系统

可提供的1.0.0

addDatasAfter

在原数据后加音频数据

示例代码

[{
    "id": 1,
    "title": "在那之后",
    "artist": "缪礼丞 / Mikey-18 / Tiko",
    "albumName": "--",
    "pic": "http://p2.music.126.net/ZuJ6QoksVgpSzNzUxjk5XA==/109951168002270456.jpg",
    "music_url": "http://music.163.com/song/media/outer/url?id=1992695240.mp3",
    "description": "如果说当时分开是巧合..."
  }
]
var ox = api.require('oxMusicPlayer');
ox.addDatasAfter({data:data},function(ret) {
  var code = ret.code;
  //0成功 -1失败
});

可用性

Android,ios系统

可提供的1.0.0

updateDatas

更新音频数据

示例代码

[{
    "id": 1,
    "title": "在那之后",
    "artist": "缪礼丞 / Mikey-18 / Tiko",
    "albumName": "--",
    "pic": "http://p2.music.126.net/ZuJ6QoksVgpSzNzUxjk5XA==/109951168002270456.jpg",
    "music_url": "http://music.163.com/song/media/outer/url?id=1992695240.mp3",
    "description": "如果说当时分开是巧合..."
  }
]
var ox = api.require('oxMusicPlayer');
ox.updateDatas({data:data},function(ret) {
  var code = ret.code;
  //0成功 -1失败
});

可用性

Android,ios系统

可提供的1.0.0

insertData

插入音频数据

示例代码

{
    "id": 1,
    "title": "在那之后",
    "artist": "缪礼丞 / Mikey-18 / Tiko",
    "albumName": "--",
    "pic": "http://p2.music.126.net/ZuJ6QoksVgpSzNzUxjk5XA==/109951168002270456.jpg",
    "music_url": "http://music.163.com/song/media/outer/url?id=1992695240.mp3",
    "description": "如果说当时分开是巧合..."
}

var ox = api.require('oxMusicPlayer');
ox.insertData({data:data},function(ret) {
  var code = ret.code;
  //0成功 -1失败
});

可用性

Android,ios系统

可提供的1.0.0

deleteData

删除音频数据

示例代码

var ox = api.require('oxMusicPlayer');
ox.deleteData({index:0},function(ret) {
  var code = ret.code;
  //0成功 -1失败
});

可用性

Android,ios系统

可提供的1.0.0

sendDanmaku

发送弹幕

示例代码

var ox = api.require('oxMusicPlayer');

 var danmaku ={
                                            uid:'',
                                            avatar:'http://7z2dc9.com1.z0.glb.clouddn.com/apicloud/bc281dfcaf750de7acd9c8e9224e237b.png',
                                            name:'潮汕小丸子',
                                            content:'弹幕'
                                          };
                               ox.sendDanmaku(danmaku);

可用性

Android,ios系统

可提供的1.0.0

showDanmaku

显示弹幕

示例代码

var ox = api.require('oxMusicPlayer');
ox.showDanmaku();

可用性

Android,ios系统

可提供的1.0.0

hideDanmaku

隐藏弹幕

示例代码

var ox = api.require('oxMusicPlayer');
ox.hideDanmaku();

可用性

Android,ios系统

可提供的1.0.0

addComponent

添加自定义控件

示例代码

var closeBtn = {
    type: 'component',
    x: 10,
    y: 40,
    w: 25,
    h: 25,
    radius: 5,
    backgroundColor: '#01000000',
    alpha: 0.1,
    border: 0,
    borderColor: '#01000000',
    code: 26,
    hidden: false,
    animation: 0,
    pics: [{ path: 'widget://image/close.png', x: 0, y: 0, w: 25, h: 25, code: 261 }],
    texts: []
  }
var ox = api.require('oxMusicPlayer');
ox.addComponent(closeBtn);

可用性

Android,ios系统

可提供的1.0.0

updateComponent

更新自定义控件

示例代码

var closeBtn = {
    type: 'component',
    x: 10,
    y: 40,
    w: 25,
    h: 25,
    radius: 5,
    backgroundColor: '#01000000',
    alpha: 0.1,
    border: 0,
    borderColor: '#01000000',
    code: 26,
    hidden: false,
    animation: 0,
    pics: [{ path: 'widget://image/close.png', x: 0, y: 0, w: 25, h: 25, code: 261 }],
    texts: []
  }
var ox = api.require('oxMusicPlayer');
ox.updateComponent(closeBtn);

可用性

Android,ios系统

可提供的1.0.0

clearCache

清理缓存

示例代码


var ox = api.require('oxMusicPlayer');
ox.clearCache();

可用性

Android,ios系统

可提供的1.0.0

是否仍需要帮助? 请保持联络!
最后更新于 2024/11/18