at org.cocos2dx.lib.Cocos2dxVideoView.openVideo(unavailable:-1) ANR问题

  • Creator 版本: 2.4.4

  • 目标平台: Android

  • 重现方式:cc.VideoPlayer加载完成后,播放视频

  • 首个报错:anr traces:
    generate begin time: 2021-12-20 17:14:01
    [DEBUG] dump art internal: 151
    [DEBUG] VMExt: 0x7508c48700, i: 62, str: 0
    [DEBUG] aborting: 0x0, 0
    [DEBUG] Dump: 0x0, State: 0x7508afe36c, JavaStack: 0x7508b026d0
    [DEBUG] current: 0x7508c10800, pid: 17445
    [DEBUG] List: 0x7508d0f000
    [DEBUG] Each: 0x7508b18edc
    [DEBUG] err: 0x758b65b990
    [DEBUG] begin each
    [DEBUG] dumping 0x7508c10800 …
    “main” prio=5 tid=1 Native
    | group=“main” sCount=0 dsCount=0 flags=0 obj=0x73c17540 self=0x7508c10800
    | sysTid=16768 nice=-10 cgrp=default sched=0/0 handle=0x758fc2f0d0
    | state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
    | stack=0x7fce0f8000-0x7fce0fa000 stackSize=8192KB
    | held mutexes=
    at android.media.MediaPlayer._prepare(Native method)
    at android.media.MediaPlayer.prepare(MediaPlayer.java:1385)
    at org.cocos2dx.lib.Cocos2dxVideoView.openVideo(unavailable:-1)
    at org.cocos2dx.lib.Cocos2dxVideoView.access$700(unavailable:-1)
    at org.cocos2dx.lib.Cocos2dxVideoView$4.surfaceCreated(unavailable:-1)
    at android.view.SurfaceView.updateSurface(SurfaceView.java:884)
    at android.view.SurfaceView$2.onPreDraw(SurfaceView.java:179)
    at android.view.ViewTreeObserver.dispatchOnPreDraw(ViewTreeObserver.java:1098)
    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3375)
    at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2166)
    at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8884)
    at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1280)
    at android.view.Choreographer.doCallbacks(Choreographer.java:1019)
    at android.view.Choreographer.doFrame(Choreographer.java:911)
    at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1248)
    at android.os.Handler.handleCallback(Handler.java:900)
    at android.os.Handler.dispatchMessage(Handler.java:103)
    at android.os.Looper.loop(Looper.java:219)
    at android.app.ActivityThread.main(ActivityThread.java:8668)
    at java.lang.reflect.Method.invoke(Native method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1109)

“Signal Catcher” daemon prio=5 tid=3 WaitingInMainSignalCatcherLoop
| group=“system” sCount=0 dsCount=0 flags=0 obj=0x1b2c1560 self=0x7508c73400
| sysTid=16779 nice=0 cgrp=default sched=0/0 handle=0x74fd187d50
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x74fd091000-0x74fd093000 stackSize=991KB
| held mutexes=
(no managed stack frames)

“Jit thread pool worker thread 0” daemon prio=5 tid=6 Native
| group=“main” sCount=0 dsCount=0 flags=0 obj=0x1b2c15d8 self=0x74fc05d000
| sysTid=16774 nice=0 cgrp=default sched=0/0 handle=0x74fd28cd40
| state=? schedstat=( 0 0 0 ) utm=0 stm=0 core=0 HZ=100
| stack=0x74fd18e000-0x74fd190000 stackSize=1023KB
| held mutexes=
(no managed stack frames)

  • 手机型号: HUAWEI TAS-AN00 和 xiaomi Redmi 6 Pro
  • 重现概率: 较低,无法稳定复现

有没有遇到过相同问题的朋友。使用Cocos cc.VideoPlayer 播放视频时,出现ANR异常问题。

请问道友,这个问题解决了吗?