收藏
回答

BackgroundAudioManager errCode 10003

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug BackgroundAudioManager 微信iOS客户端 7.0.8 2.9.0

这是一个部分用户触发的错误,地区国内。故无法提供可重现的代码,实在抱歉。


# 我们的测试方法

  1. 用户遇到播放错误,且更换地址重试3次都无法解决是,会提示用户,并请示到【测试界面】。

  2. 我们预先准备了4个播放地址(mp3和mp4格式),分别对 BackgroundAudioManager InnerAudioContext 进行测试。

  3. 触发过 time-update 事件则标记为 【正常】并结束测试;触发过 error 事件则标记为 【异常】并结束测试。



# 我们测试代码:

a. BackgroundAudioManager版本  ⬇

Component({
  properties: {
    source: {
      type: Object,
    }
  },
 
  methods: {
    nativePlayData() {
      const self = this;
      const data = this.data.source;
      const backgroundAudioManager = wx.getBackgroundAudioManager();
 
      this.ctx = backgroundAudioManager;
 
      backgroundAudioManager.title = '测试音频'
      backgroundAudioManager.epname = '';
      backgroundAudioManager.singer = '';
      backgroundAudioManager.coverImgUrl = data.shelfPicture;
      backgroundAudioManager.src = data.playUrl;
 
      backgroundAudioManager.onTimeUpdate(this.updateHandler = function(e) {
        self.triggerEvent('time-update', e);
      });
 
      backgroundAudioManager.onError(this.errorHandler = function(res) {
        self.triggerEvent('audio-error', {code: res.errCode, text: res.errCode + res.errMsg});
      });
    },
  },
 
  ready() {
    this.nativePlayData();
  },
 
  detached() {
    this.ctx.stop();
  }
});


b. InnerAudioContext版本  ⬇⬇⬇⬇⬇⬇

Component({
  properties: {
    source: {
      type: Object,
    }
  },
 
  methods: {
    nativePlayData() {
      const self = this;
      const data = this.data.source;
      const innerAudioContext = wx.createInnerAudioContext();
 
      this.ctx = innerAudioContext;
      innerAudioContext.autoplay = true;
      innerAudioContext.src = data.playUrl;
 
      innerAudioContext.onTimeUpdate(this.updateHandler = function(e) {
        self.triggerEvent('time-update', e);
      });
 
      innerAudioContext.onError(this.errorHandler = function(res) {
        self.triggerEvent('audio-error', {code: res.errCode, text: res.errCode + res.errMsg});
      });
    },
  },
 
  ready() {
    this.nativePlayData();
  },
 
  detached() {
    this.ctx.stop();
 
    try {
      this.ctx.offError(this.errorHandler);
    } catch (e) {}
 
    try {
      this.ctx.offTimeUpdate(this.updateHandler);
    } catch (e) {}
  }
});



# 用户检测结果:





下面是经过我们半个月的持续观察,总结出来的信息,希望能帮助找出问题。

  1. 每天影响用户0.2~1%不等。

  2. 用户不可以播放的时候,影响时长为0.5~5天不等。

  3. 跟网络也有一定关系,之前接待的一个用户就是4g不可以播,切到wifi可以;然后再切回4g时,依然不可以

  4. 我们的服务没问题,如图BackgroundAudioManager 不可以, InnerAudioContext 可以。直接网页打开链接也能播。

  5. 多见于IOS。

回答关注问题邀请回答
收藏

3 个回答

  • 张百岁阿
    张百岁阿
    2020-05-27

    2020-05-27
    有用
    回复 1
    • 张百岁阿
      张百岁阿
      2020-05-27
      w我这边也是,同样的ios机型,有些可以播放,有些不行
      2020-05-27
      回复
  • ⛄ WELLS 💤
    ⛄ WELLS 💤
    2020-03-27

    +1

    解决了嘛? 我的用户也发现同样的问题。

    2020-03-27
    有用
    回复
  • 灵芝
    灵芝
    2019-10-23

    麻烦复现问题的时候在手机微信上传日志: 我->设置->帮助与反馈右上角有个上报日志的入口,提供出现问题的微信号,出现问题的时间点(具体到分钟)

    2019-10-23
    有用
    回复 28
    查看更多(23)
登录 后发表内容
问题标签