我的Android应用程序中有一个关键问题。我面临着很高的ANR(应用程序无响应)率,这只发生在Android版本13设备上。尽管进行了详尽的尝试,但我无法一致地重现ANR或确定其根本原因。
我从Firebase Crashlytics得到了这个堆栈跟踪
main (native):tid=1 systid=13180
#00 pc 0x501b0 libc.so (syscall + 32) (BuildId: 8cdfaa872c9e7191f6ce7a82d62dbc4b)
#01 pc 0x54e7c libc.so (__futex_wait_ex(void volatile*, bool, int, bool, timespec const*) + 148) (BuildId: 8cdfaa872c9e7191f6ce7a82d62dbc4b)
#02 pc 0xbb2bc libc.so (pthread_cond_wait + 80) (BuildId: 8cdfaa872c9e7191f6ce7a82d62dbc4b)
#03 pc 0x284f3c libhwui.so (android::uirenderer::renderthread::DrawFrameTask::drawFrame() + 360) (BuildId: 56d31f3aab59c6c0ed6699bc4a8c8848)
at android.graphics.HardwareRenderer.nSyncAndDrawFrame(Native method)
at android.graphics.HardwareRenderer.syncAndDrawFrame(HardwareRenderer.java:457)
at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:866)
at android.view.ViewRootImpl.draw(ViewRootImpl.java:5120)
at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:4819)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:4014)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2606)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9773)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1480)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1488)
at android.view.Choreographer.doCallbacks(Choreographer.java:1111)
at android.view.Choreographer.doFrame(Choreographer.java:1016)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1463)
at android.os.Handler.handleCallback(Handler.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:223)
at android.os.Looper.loop(Looper.java:324)
at android.app.ActivityThread.main(ActivityThread.java:8631)
at java.lang.reflect.Method.invoke(Native method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:582)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1061)
我已经优化了我的代码,更新了使用项目的所有依赖项,还将AGP升级到v7.4.2。但都不管用。
1条答案
按热度按时间2guxujil1#
你得说得更具体一点。您是否在应用程序中使用Google广告以及使用何种格式(横幅广告、插播广告...)?您是否在应用程序中使用动画,如
ViewCompat.animate(View)
或类似的动画,以及您是否使用硬件加速,如View.LAYER_TYPE_HARDWARE
,ViewPropertyAnimator.withLayer()
等?您是否将某些音频播放器与其中一个示例结合使用?我只在API 33上遇到了同样的问题,我目前正在研究解决方案。由于这些ARN的内容,不可能确切地知道是什么导致了用户的这种非常不愉快的事件。如果我找到原因,我会写在这里,你回答上面的问题。谢谢你好