模拟器播放声音有声,真机却无声!Any idea?
发布于 6 年前 作者 lhe 12308 次浏览 来自 问答

设备:iPhone 5s

系统: iOS 10.1

var voiceUrl = "http://xxxxxxx/xxxx.silk";

    wx.downloadFile({

      url: voiceUrl,

      header: {},

      success: function(res) {

        wx.playVoice({

          filePath: res.tempFilePath,

          success: function (res) { },

          fail: function (res) { },

          complete: function (res) {

            console.log(res);

          },

        })

      },

      fail: function(res) {},

      complete: function(res) {

        console.log(res);

      },

    })


播放的是silk文件。。。。。

代码也没错吧。。。。。


真机开调试,发现死活没调用wx:playVoice这个接口,何解!

5 回复

调用:

    wx.playBackgroundAudio({

      dataUrl: voiceUrl,

      title: ‘’,

      coverImgUrl: ‘’,

      success: function (res) { },

      fail: function (res) { },

      complete: function (res) {

        console.log(res);

      },

    })

可以播了。。。。

但不支持本地播放么???只能播在线音频…

不能了,我这样写的:

    wx.downloadFile({

      url: voiceUrl,

      header: {},

      success: function(res) {

        wx.playBackgroundAudio({

          dataUrl: res.tempFilePath,

          title: ‘’,

          coverImgUrl: ‘’,

          success: function (res) { },

          fail: function (res) { },

          complete: function (res) {

            console.log(res);

          },

        })

      },

      fail: function(res) {},

      complete: function(res) {

        console.log(res);

      },

    })

真机调试显示:

{errMsg: “playBackgroundAudio: fail dataUrl or webUrl or lowbandUrl must http or https stream”}

旧版本不支持播放本地文件,6.5.10版本起开始支持

download后的文件路径不能直接播放吗?

wx:playVoice只用于播放startRecord录制的音频,普通的音乐文件请使用音乐播放接口

回到顶部