audio
来自于:官方
play setVolume setProgress pause stop addEventListener getDuration expungeCache
概述
本模块已停止更新,建议使用 audioStreamer
audio 封装了对音频流播放的接口,可播放本地和网络音频。实现对音频资源的播放、暂停、继续、停止、设置播放位置等相关操作。对网络音频资源暂不支持缓存到本地。在 iOS 上如需支持后台播放功能请参考应用配置说明文档里关于 BackgroundMode 的配置
play
播放网络音频
play({params}, callback(ret, err))
params
path:
- 类型:字符串
- 描述:音频资源地址,支持本地和网络协议(如:fs://、widget://、http://、 https:// 等)
callback(ret, err)
ret:
- 类型:JSON 对象
- 内部字段:
{
duration: //数字类型;音频总时长,单位为秒(s)
current: //数字类型;当前播放位置,单位为秒(s)
complete: //布尔类型;是否播放完毕
}
示例代码
var audio = api.require('audio');
audio.play({
path: 'http://7xisq1.com1.z0.glb.clouddn.com/apicloud/0d0b81b8bd5ab81bda9ca54267eb9b98.mp3'
}, function(ret, err) {
if (ret) {
alert(JSON.stringify(ret));
} else {
alert(JSON.stringify(err));
}
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setVolume
设置音量
setVolume({params})
params
volume:
- 类型:数字
- 描述:(可选项)音量大小,取值范围:0-1
- 默认值:0
示例代码
var audio = api.require('audio');
audio.setVolume({
volume: 0.6
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
setProgress
设置播放位置
setProgress({params})
params
progress:
- 类型:数字
- 描述:(可选项)播放位置百分比,取值范围:0-100
- 默认值:0
示例代码
var audio = api.require('audio');
audio.setProgress({
progress: 50
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
pause
暂停播放,暂停后调用 play 接口即可继续播放
pause()
示例代码
var audio = api.require('audio');
audio.pause();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
stop
停止播放
stop()
示例代码
var audio = api.require('audio');
audio.stop();
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
addEventListener
监听被其它 app 打断事件,或电话事件,暂仅支持 iOS 平台
addEventListener(callback(ret))
callback(ret)
ret:
- 类型:JSON 对象
- 内部字段:
{
eventType: //字符串类型;交互事件类型,取值范围如下:
//pause:播放暂停(被打断事件开始)
//restart:播放恢复(被打断事件结束)
}
示例代码
var audio = api.require('audio');
audio.addEventListener(function(ret) {
if (ret) {
alert(JSON.stringify(ret));
}
});
可用性
iOS系统
可提供的1.0.0及更高版本
getDuration
获取本地音频时长
getDuration({params}, callback(ret))
params
path:
- 类型:字符串类型
- 描述:音频的路径 (支持 fs://)
callback(ret)
ret:
- 类型:JSON对象
- 描述:返回值
{
duration : 200 // 数字类型;音频的时长;单位:ms
}
示例代码
var audio = api.require('audio');
audio.getDuration({
path: 'fs://recorder/123.mp3'
}, function(ret) {
alert(JSON.stringify(ret));
});
可用性
iOS系统,Android系统
可提供的1.0.0及更高版本
expungeCache
播放网络音频时,清除本地缓存
注意:本接口仅支持 iOS 平台,android平台上会自动清除
expungeCache()
示例代码
var audio = api.require('audio');
audio.expungeCache();
可用性
iOS系统
可提供的1.0.4及更高版本