gzahz
gzahz
  • 发布:2022-04-25 03:25
  • 更新:2024-11-14 10:38
  • 阅读:1184

【报Bug】ISO端 uni.createInnerAudioContext()中onTimeUpdate监听进度无法停止

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 10

HBuilderX类型: 正式

HBuilderX版本号: 3.4.7

手机系统: iOS

手机系统版本号: iOS 15

手机厂商: 苹果

手机机型: iPhone SE

页面类型: nvue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

uni.createInnerAudioContext() ,先播放音频,然后暂停或销毁实例, onTimeUpdate监听进度依然一直监听,在HX控制台中一直在打印数据

预期结果:

音频暂停或销毁实例后,监听进度也需要同时取消

实际结果:

音频暂停或销毁实例后,监听进度在控制台中一直打印数据,直到关闭HX工具或退出APP

bug描述:

ISO端 uni.createInnerAudioContext() ,调用onPause暂停或销毁实例, onTimeUpdate监听数据时在HBuilderX控制台中可以看到数据一直没有停,除非关闭HBuilderX或退出APP从新启动

2022-04-25 03:25 负责人:DCloud_iOS_WZT 分享
已邀请:
DCloud_UNI_Anne

DCloud_UNI_Anne

  • gzahz (作者)

    已抽离出来示例代码,再次测试确认的确在暂停时或销毁播放器了还在控制台一直打印播放进度

    2022-04-26 00:39

  • DCloud_UNI_Anne

    回复 3***@qq.com: 直接用示例代码hello uni-app能出现你的问题吗?

    2022-04-26 11:33

  • gzahz (作者)

    回复 DCloud_UNI_Anne: 不好意思这几天不在线 才看到,实例代码也要修改为什NVUE才会出现, 我上面的代码是必现的, 我目前处理办法就是在监听进度条哪里判断避免一直在打印数据,可这个估计会影响到性能吧,

    2022-04-30 17:28

  • 3***@qq.com

    同样遇到了这个问题 暂停销毁后onTimeUpdate还是不停在打印数据

    2022-09-07 14:27

  • DCloud_UNI_Anne

    回复 3***@qq.com: 用HBuilderX3.6.0版本试下能复现此问题吗?

    2022-09-07 14:29

  • 3***@qq.com

    回复 DCloud_UNI_Anne: 从官方下载了 3.6.1 还是会一直打印 但是比我之前用的3.4好多

    2022-09-13 18:19

  • 3***@qq.com

    回复 DCloud_UNI_Anne: 跳出本页面还一直在打印 会导致app卡顿闪退等无法使用 请问有啥办法能让onTimeUpdate停止调用

    2022-09-14 10:13

  • 3***@qq.com

    回复 DCloud_UNI_Anne: 然后我写了个方法就是 如果当前路由不在我要展示音频的页面 onTimeUpdate每次都调用innerAudioContext.destroy() 销毁 然后就是无法销毁 destroy()一直在不停调用 onTimeUpdate也一直在不停调用

    2022-09-14 10:20

  • DCloud_UNI_Anne

    回复 3***@qq.com: 这边排查下

    2022-09-14 16:08

  • 3***@qq.com

    回复 DCloud_UNI_Anne: 好的 我这边的需求情景是 在一个页面切换了多条音频播放 不是单个音频播放出现的问题

    2022-09-14 17:36

  • 3***@qq.com

    回复 DCloud_UNI_Anne: 不确定单条音频能不能复现这个问题

    2022-09-14 17:36

  • DCloud_UNI_Anne

    回复 3***@qq.com: 你这是安卓正常?ios才复现吗?

    2022-09-14 18:26

  • DCloud_UNI_Anne

    回复 3***@qq.com: 为方便排查定位问题,也可提供下简单复现示例(上传附件)

    2022-09-14 20:36

  • 3***@qq.com

    回复 DCloud_UNI_Anne:安卓也会出现同样情况 只不过比ios稳定 复现示例我搞一下 就是快速的切换音频后会出现上述情况

    2022-09-17 18:03

gzahz

gzahz (作者)

示例代码

刨地瓜

刨地瓜

hbuilderX3.6.4 这个API在iphone7下真机测试有问题,只要play后,等待音乐播放结束。直接将手机锁屏,过两三分钟再解锁。会直接播放设置的音乐,且不触发onPlay事件。即使在onHide与onShow里销毁了实例对象也一样。

2***@qq.com

2***@qq.com

您好, 这个问题解决了吗? 这个肯定会影响 性能的吧。onTimeUpdate 一直在运行, 怎么取消这个? 安卓APP

  • gzahz (作者)

    以前我是NVUEIOS出现 安卓没有出现,都过了很多个版本了目前不知道什么情况,以前是onTimeUpdate中判断实例存在才做进度条处理避免报错,一直用到现在还没有发现什么别的问题

    2022-12-15 15:36

s***@hafeikids.com

s***@hafeikids.com

3.6.18问题依然存在

布朗

布朗

3.7.9问题还是存在

3***@qq.com

3***@qq.com

安卓 也会这样的问题,有时候stop 会多次触发,你们解决了吗?

leaf666

leaf666

极大的可能是你一个innerAudioContext 执行了 多次 play() 方法。这样就算是执行了一次pause() 歌曲停止了,但是因为执行了多个play(),没有全部停止,所以 onTimeUpdate 一直在运行

要回复问题请先登录注册