html52.com
我爱小程序-开发者交流社区

wx.createInnerAudioContext问题追踪与记录

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug wx.createInnerAudioContext 工具 7.0.4 2.7.0

真机上没啥问题,主要是开发工具上表现差异较大。


问题一,播放结束后,第二次点击播放,TimeUpdate不会回调;

问题二,如果添加了destroy方法之后,会导致TimeUpdate在销毁的过程中报错,如截图。


对于TimeUpdate虽然可以通过Canplay添加pause和play方式临时解决,但是TimeUpdate事件未被销毁,更换地址播放时,会导致之前的音频地址同时也在播放。


调试跟踪看了下,官方对于TimeUpdate的事件处理与其他如Play、Ended等事件处理机制是不一样的,主要是要考虑TimeUpdate每隔250ms执行一次回调,实际上重复注册使用的是同一个事件。


通过WeakMap+随机时间戳字符串的方式进行关联,但是貌似事件注册那里存在问题,注册的实际是undefined,使得off去获取的时候,得到的是undefined,就抛出提示截图的错误。


- 当前 Bug 的表现(可附上截图)

- 当前 Bug 的表现(可附上截图)- 预期表现

- 预期表现

能够正常实现TimeUpdate回调,以及正常销毁。

- 复现路径

pages/index/index

- 提供一个最简复现 Demo

https://developers.weixin.qq.com/s/BUc5iEmR7J8w


评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付