收藏
回答

createInnerAudioContext 发现最新BUG

框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
小程序 Bug createInnerAudioContext 微信iOS客户端 8.0.2 2.15.0 (2021.2.5 15:49:39)

onReady: function () {

        //加载背景音乐

        this.InnerAudioContext = wx.createInnerAudioContext()

        this.InnerAudioContext.autoplay = true

        this.InnerAudioContext.loop = true

        this.InnerAudioContext.src = 'https:/xxx.com/x.mp3'

  },


onShow: function () {

原因出现在这里,当手机屏息或者切到桌面,再次返回小程序的时候,play()执行不成功,需要加延时才可以再次正常播放音乐。

之前都是正常的,升级微信新版后出现这个故障,算是BUG吧,望解决。

    this.InnerAudioContext ? this.InnerAudioContext.play() : null

  },

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

2 个回答

  • Cjiang
    Cjiang
    2021-02-19

    你好,麻烦提供出现问题的具体机型、微信版本号、系统版本号,以及能复现问题的代码片段(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),并详细描述下复现的流程。

    2021-02-19
    有用
    回复
  • Vinlic
    Vinlic
    2021-02-14

    可以贴完整点的代码看看

    2021-02-14
    有用
    回复 4
    • y40,
      y40,
      2021-02-14
      上面就是可用完整代码,最新版ios微信100%复现。 条件是:当手机屏息或者切到桌面,再次返回小程序的时候,触发了onShow,但是play()执行不成功,需要延时执行才正常。
      2021-02-14
      回复
    • Vinlic
      Vinlic
      2021-02-14回复y40,
      后台返回时onShow时InnerAudioContext变成null了?不过从这个逻辑来看如果是首次进入页面的话onShow事件会优先于onReady事件的
      2021-02-14
      回复
    • y40,
      y40,
      2021-02-14回复Vinlic
      onShow用了三目判断,事件顺序不影响的。 


      屏息和桌面的时候小程序内音频组件InnerAudioContext会自动暂停播放。
      这份代码目的是返回小程序时立马触发onShow执行play()继续播放背景音乐(但是play()好像失效,加延时可以正常继续播放)


      肯定是新版微信在返回小程序页面处理了一些什么,出现了这个小问题。。
      2021-02-14
      回复
    • Vinlic
      Vinlic
      2021-02-14回复y40,
      只有真机才会发生是吗,有测其它机型么?
      2021-02-14
      回复
登录 后发表内容
问题标签