HarmonyOS 视频播放结束后,重播,需要点击重播点两遍才能重播
视频播放结束后,需要点击两遍重播,才能重头开始播放。
在播放器播放完成后,COMPLETED状态会调用this.avPlayer.stop(),点击重播,调用this.avPlayer?.prepare(),但是点一遍,日志输出AVPlayer state stopped called,点第二遍,状态才变成prepared,日志输出AVPlayer state prepared called。
尝试在点击重播时直接在代码里调用两次this.avPlayer?.prepare()也不行,必须有间隔时间调用两次this.avPlayer?.prepare()才能重播。请问不能直接调用一次this.avPlayer?.prepare()来实现重播吗,还需要调用什么?以下是状态流转时的操作:
this.avPlayer.on(PlayerEvent.STATE_CHANGE, async (state: string, reason: media.StateChangeReason) => {
switch (state) {
case PlayerState.IDLE:
console.info('AVPlayer state idle called.')
this.avPlayer.release()
break
case PlayerState.INITIALIZED:
console.info('xxx','AVPlayer state initialized called.')
this.avPlayer.surfaceId = this.surfaceId // 设置显示画面,当播放的资源为纯音频时无需设置
this.avPlayer.prepare()
break
case PlayerState.PREPARED:
console.info('xxx', 'AVPlayer state prepared called.')
this.avPlayer.play()
break
case PlayerState.PLAYING:
console.info('xxx', 'AVPlayer state playing called.')
break
case PlayerState.PAUSED:
console.info('xxx','AVPlayer state paused called.')
break
case PlayerState.COMPLETED:
console.info('xxx','AVPlayer state completed called.')
this.context.eventHub.emit(VideoEvent.PLAY_COMPLETE)
this.avPlayer.stop()
break
case PlayerState.STOPPED:
console.info('xxx','AVPlayer state stopped called.')
break
case PlayerState.RELEASED:
console.info('xxx','AVPlayer state released called.')
break
default:
console.info('xxx','AVPlayer state unknown called.')
break
}
})
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS 设置我的位置功能后并未显示当前位置点,需要点击定位才能显示当前定位点
1289浏览 • 1回复 待解决
HarmonyOS开发中设置我的位置功能后并未显示当前位置点,需要点击定位才能显示当前定位点?
865浏览 • 0回复 待解决
HarmonyOS webview加载页面时会加载两遍
1004浏览 • 1回复 待解决
showSoftKeyboard一定要点击输入框才能唤起输入法吗?
3478浏览 • 1回复 待解决
HarmonyOS 需要视频播放、音频播放的demo
930浏览 • 1回复 待解决
HarmonyOS 需要视频小窗播放功能
1233浏览 • 1回复 待解决
HarmonyOS image加载网络动图播放一遍后不再播放,有什么方法可以 设置循环播放
960浏览 • 1回复 待解决
HarmonyOS swiper的disableSwipe所传的state不会马上生效,需要在一次滑动事件结束后才能生效
696浏览 • 1回复 待解决
HarmonyOS 需要视频播放器的选型
1380浏览 • 1回复 待解决
Dev studio需要运行两次才能 生效最新修改的代码
3121浏览 • 1回复 待解决
HarmonyOS 视频录制后保存文件,打开视频文件不能播放,提示格式错误,无法解码播放
1941浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何实现短视频播放控制,比如点击暂停和播放?
1326浏览 • 1回复 待解决
音视频播放是否需要创建长时任务
3004浏览 • 1回复 待解决
HarmonyOS Video组件播放网络视频,需要refer鉴权,如何添加
1847浏览 • 1回复 待解决
HarmonyOS 视频播放
1075浏览 • 1回复 待解决
HarmonyOS 点击埋点和曝光埋点的最佳实践是什么?
1908浏览 • 1回复 待解决
HarmonyOS 两个List互相锚点功能
763浏览 • 1回复 待解决
HarmonyOS web mediaPlayGestureAccess设置为false后 视频无法自动播放
901浏览 • 1回复 待解决
是否支持点一下应用包就能安装APP?不需要通过hdc命令才能安装
1961浏览 • 1回复 待解决
HarmonyOS 视频播放相关
2645浏览 • 1回复 待解决
HarmonyOS 视频渲染播放
1000浏览 • 1回复 待解决
HarmonyOS 属性动画播放次数设置为无限次播放时,怎样手动结束动画
976浏览 • 1回复 待解决
主线程怎么才能判断子线程是否已经执行结束了
7942浏览 • 1回复 待解决
使用Environment获取设备语言时,为什么需要在UIContext明确后才能调用?
508浏览 • 0回复 待解决
HarmonyOS 视频播放器Video播放在线视频问题
2624浏览 • 1回复 待解决
代码如下: