微信小程序开发之音乐播放器 真机测试 audio API

时间:2021-07-30 05:51:10

简单的试了试播放器,还是有不少坑的.开始在模拟器上跑,一直没有声音,总是刚开始播放就暂停.做个笔记.

准备资源:

音乐图片地址:http://ac-5g9r20ds.clouddn.com/63bedb5f584234b6827c.jpg

音乐mp3地址:http://ac-5g9r20ds.clouddn.com/e54ad7f0a834b9c07ec6.mp3

我用leancloud做的后台.真机测试有效

上张图,这是在模拟器上跑的.播放也能正常运行.右边是获取到的播放状态参数.代码部分说.

微信小程序开发之音乐播放器 真机测试 audio API


下面是真机上的图.

微信小程序开发之音乐播放器 真机测试 audio API

同样可以获取到播放状态参数:

微信小程序开发之音乐播放器 真机测试 audio API


在不关闭音乐的情况下,退出小程序,是这样的.我当时就惊呆了.这会让小程序有更多露脸的机会啊.我一定的写个能播放音频的小程序.哈哈.

微信小程序开发之音乐播放器 真机测试 audio API


再次进入的时候是这样的,图片是在js里面设置的.就在开始说的链接.

微信小程序开发之音乐播放器 真机测试 audio API


代码:

1.index.wxml

<!--index.wxml-->

<button class="button-style" bindtap="listenerButtonPlay">播放</button>
<button class="button-style" bindtap="listenerButtonPause">暂停</button>
<button class="button-style" bindtap="listenerButtonSeek">设置播放进度</button>
<button class="button-style" bindtap="listenerButtonStop">停止播放</button>
<button class="button-style" bindtap="listenerButtonGetPlayState">获取播放状态</button>


2.index.js

//index.js
//获取应用实例
var app = getApp()
Page({
data: {
},
listenerButtonPlay: function () {
wx.playBackgroundAudio({
//播放地址
dataUrl: 'http://ac-5g9r20ds.clouddn.com/e54ad7f0a834b9c07ec6.mp3',
title: '李宗盛',
//图片地址
coverImgUrl: 'http://ac-5g9r20ds.clouddn.com/63bedb5f584234b6827c.jpg'
})

},

/**
* 播放状态
*/
listenerButtonGetPlayState: function () {
wx.getBackgroundAudioPlayerState({
success: function (res) {
console.log('duration:' + res.duration)
console.log('currentPosition:' + res.currentPosition)
console.log('status:' + res.status)
console.log('downloadPercent:' + res.downloadPercent)
console.log('dataUrl:' + res.dataUrl)
}
})
},
/**
* 监听button暂停按钮
*/
listenerButtonPause: function () {
wx.pauseBackgroundAudio();
console.log('暂停播放')
},
/**
* 设置进度
*/
listenerButtonSeek: function () {
wx.seekBackgroundAudio({
position: 40
})
},
/**
*停止播放
*/
listenerButtonStop: function () {
wx.stopBackgroundAudio()
console.log('停止播放')
},

onLoad: function (options) {
// 页面初始化 options为页面跳转所带来的参数
/**
* 监听音乐播放
*/
wx.onBackgroundAudioPlay(function () {
console.log('onBackgroundAudioPlay')
})

/**
* 监听音乐暂停
*/
wx.onBackgroundAudioPause(function () {
console.log('onBackgroundAudioPause')
})

/**
* 监听音乐停止
*/
wx.onBackgroundAudioStop(function () {
console.log('onBackgroundAudioStop')
})
},
})

3.index.wxss

/**index.wxss**/
.button-style{
background-color: #eee;
border-radius: 8rpx;
margin: 20rpx;
}


详细的API就不说了.看看文档就知道了.


我的博客:http://blog.csdn.net/qq_31383345