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

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

准备资源:

音乐图片地址: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

[html] view plain copy

  1. <!--index.wxml-->
  2. <button class="button-style"  bindtap="listenerButtonPlay">播放</button>
  3. <button class="button-style" bindtap="listenerButtonPause">暂停</button>
  4. <button class="button-style" bindtap="listenerButtonSeek">设置播放进度</button>
  5. <button class="button-style" bindtap="listenerButtonStop">停止播放</button>
  6. <button class="button-style" bindtap="listenerButtonGetPlayState">获取播放状态</button>

2.index.js

  1. //index.js
  2. //获取应用实例
  3. var app = getApp()
  4. Page({
  5.   data: {
  6.   },
  7.   listenerButtonPlay: function () {
  8.     wx.playBackgroundAudio({
  9.       //播放地址
  10.       dataUrl: 'http://ac-5g9r20ds.clouddn.com/e54ad7f0a834b9c07ec6.mp3',
  11.       title: '李宗盛',
  12.       //图片地址
  13.       coverImgUrl: 'http://ac-5g9r20ds.clouddn.com/63bedb5f584234b6827c.jpg'
  14.     })
  15.   },
  16.   /**
  17.    * 播放状态
  18.    */
  19.   listenerButtonGetPlayState: function () {
  20.     wx.getBackgroundAudioPlayerState({
  21.       success: function (res) {
  22.         console.log('duration:' + res.duration)
  23.         console.log('currentPosition:' + res.currentPosition)
  24.         console.log('status:' + res.status)
  25.         console.log('downloadPercent:' + res.downloadPercent)
  26.         console.log('dataUrl:' + res.dataUrl)
  27.       }
  28.     })
  29.   },
  30.   /**
  31.    * 监听button暂停按钮
  32.    */
  33.   listenerButtonPause: function () {
  34.     wx.pauseBackgroundAudio();
  35.     console.log('暂停播放')
  36.   },
  37.   /**
  38.    * 设置进度
  39.    */
  40.   listenerButtonSeek: function () {
  41.     wx.seekBackgroundAudio({
  42.       position: 40
  43.     })
  44.   },
  45.   /**
  46.    *停止播放 
  47.    */
  48.   listenerButtonStop: function () {
  49.     wx.stopBackgroundAudio()
  50.     console.log('停止播放')
  51.   },
  52.   onLoad: function (options) {
  53.     // 页面初始化 options为页面跳转所带来的参数
  54.     /**
  55.      * 监听音乐播放
  56.      */
  57.     wx.onBackgroundAudioPlay(function () {
  58.       console.log('onBackgroundAudioPlay')
  59.     })
  60.     /**
  61.      * 监听音乐暂停
  62.      */
  63.     wx.onBackgroundAudioPause(function () {
  64.       console.log('onBackgroundAudioPause')
  65.     })
  66.     /**
  67.      * 监听音乐停止
  68.      */
  69.     wx.onBackgroundAudioStop(function () {
  70.       console.log('onBackgroundAudioStop')
  71.     })
  72.   },
  73. })

3.index.wxss

  1. /**index.wxss**/
  2. .button-style{
  3.     background-color#eee;
  4.     border-radius: 8rpx;
  5.     margin20rpx;
  6. }

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

 

觉得好的话记得打赏赞助小灰灰哦,小灰灰灰更有动力的,谢谢

小灰灰

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: