ios手机wx.createInnerAudioContext()无法播放问题
发布于 6 年前 作者 jing59 9345 次浏览 来自 问答

同问

ios真机测试

文件地址: https://port.fcrewen.com/storage/voice/20180510085915-5af409e32f667.mp3

downloadFile下载 saveFile再保存本地返回地址是:

wxfile://store_c1e17a5b3e7c7e285970167132694cfe.mp3


安卓机 mac版开发工具 均可正常播放,但是ios手机测试 ,点击播放 先执行onplay 然后立即跳到了

onEnded 里面,导致音频无法播放,如何解决?


部分代码

wx.createInnerAudioContext()

的初始化放在单独执行过了

var play_url = ‘https://port.fcrewen.com/storage/voice/20180510085915-5af409e32f667.mp3’//这里就写一个测试的地址吧

wx.downloadFile({

    url: play_url,

    success: function (res) {

    wx.saveFile({

        tempFilePath: res.tempFilePath,

        success: function (res) {

            var savedFilePath = res.savedFilePath;

            play_url = savedFilePath;

            app.setDownLoadFile(audio_list[0].resources_id, savedFilePath);

            innerAudioContext.src = play_url;//播放地址 使用encodeURI()转过后也没用

            innerAudioContext.play();//

            that.playTime(play_time, parseInt(audio_list[0].attr) ? parseInt(audio_list[0].attr) : 0);

            list[index_].file[0].url_tem = play_url;

            list[index_].file[0].load_status = 1;

            list[index_].file[0].play_status = 1;

            that.setData({

                ‘note.list’: list

            })

        },

        fail: function () {

            var err_tip = err.errMsg ? err.errMsg : ‘文件保存出错,请稍后重试~’;

            app.showModalFail(err_tip);

        }

    })

    wx.hideToast();

    },

    fail: function () {

    app.showModalFail(‘加载出错,请稍后重试~’);

    wx.hideToast();

    },

    complete: function () {

    

    }

 })

开发工具 以及安卓手机 均可以正常使用播放,iOS 手机 点击触发 先进入 onPlay 然后1-2秒直接进入onEnded里了,无法正常播放,项目着急审核,不知什么原因,还请麻烦查看下哦


4 回复

同样的问题

同样有这个问题,另外ios 用 getBackgroundAudioManager这个api并且src用网页上 的链接是可以播放的,但是用本地的路径( wxfile://store_******** )就播放不了。

我的也是有这个问题,请问解决了吗

麻烦哪位大神指点一下,不胜感激,不知是代码写的有问题还是 API的bug?

回到顶部