android - android.graphics.Path.finalize() 10 秒后超时的根本原因是什么

标签 android

Fatal Exception: java.util.concurrent.TimeoutException: android.graphics.Path.finalize() timed out after 10 seconds at android.graphics.Path.finalizer(Path.java) at android.graphics.Path.finalize(Path.java:748) at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:202) at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:185) at java.lang.Thread.run(Thread.java:818)

我在我的一个实时应用程序中遇到了这个错误,我尝试了所有可能的方法来解决这个问题仍然没有结果。如果有人能详细告诉我这个问题以及解决方法,那就太棒了。提前致谢。

编辑:

我发现了更多日志:

   at android.view.GLES20Canvas.nDrawBitmap(GLES20Canvas.java)
   at android.view.GLES20Canvas.drawBitmap(GLES20Canvas.java:614)
   at android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:545)
   at android.widget.ImageView.onDraw(ImageView.java:1197)
   at com.flaviofaria.kenburnsview.KenBurnsView.onDraw(SourceFile:201)
   at android.view.View.draw(View.java:16536)
   at android.view.View.updateDisplayListIfDirty(View.java:15466)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.updateDisplayListIfDirty(View.java:15461)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3697)
   at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3676)
   at android.view.View.updateDisplayListIfDirty(View.java:15426)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:3697)
   at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:3676)
   at android.view.View.updateDisplayListIfDirty(View.java:15426)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.updateDisplayListIfDirty(View.java:15461)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.draw(View.java:16539)
   at android.widget.FrameLayout.draw(FrameLayout.java:598)
   at android.view.View.updateDisplayListIfDirty(View.java:15466)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.updateDisplayListIfDirty(View.java:15461)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.updateDisplayListIfDirty(View.java:15461)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at com.shaiban.audioplayer.mplayer.slidinguppanel.SlidingUpPanelLayout.drawChild(SourceFile:964)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.draw(View.java:16539)
   at com.shaiban.audioplayer.mplayer.slidinguppanel.SlidingUpPanelLayout.draw(SourceFile:1013)
   at android.view.View.updateDisplayListIfDirty(View.java:15466)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.support.v4.widget.DrawerLayout.drawChild(SourceFile:1377)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.updateDisplayListIfDirty(View.java:15461)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.updateDisplayListIfDirty(View.java:15461)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.updateDisplayListIfDirty(View.java:15461)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.updateDisplayListIfDirty(View.java:15461)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.updateDisplayListIfDirty(View.java:15461)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.View.draw(View.java:16258)
   at android.view.ViewGroup.drawChild(ViewGroup.java:3713)
   at android.view.ViewGroup.dispatchDraw(ViewGroup.java:3506)
   at android.view.View.draw(View.java:16539)
   at android.widget.FrameLayout.draw(FrameLayout.java:598)
   at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:3111)
   at android.view.View.updateDisplayListIfDirty(View.java:15466)
   at android.view.View.getDisplayList(View.java:15488)
   at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:309)
   at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:315)
   at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:354)
   at android.view.ViewRootImpl.draw(ViewRootImpl.java:2956)
   at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2753)
   at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2339)
   at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1314)
   at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:7057)
   at android.view.Choreographer$CallbackRecord.run(Choreographer.java:829)
   at android.view.Choreographer.doCallbacks(Choreographer.java:606)
   at android.view.Choreographer.doFrame(Choreographer.java:576)
   at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:815)
   at android.os.Handler.handleCallback(Handler.java:739)
   at android.os.Handler.dispatchMessage(Handler.java:95)
   at android.os.Looper.loop(Looper.java:145)
   at android.app.ActivityThread.main(ActivityThread.java:7007)
   at java.lang.reflect.Method.invoke(Method.java)
   at java.lang.reflect.Method.invoke(Method.java:372)
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)

最佳答案

好的 - 这是我的答案: 当垃圾收集器确定不再有对该对象的引用时,垃圾收集器会在该对象上调用 protected 方法 finalize。 子类重写 finalize 方法以处理系统资源或执行其他清理。 因为它在 Google Developer Documentation

事实上,我在我的应用程序中遇到了同样的问题,它在一秒钟内绘制了数百条路径: 见Visual Sounds Music Visualizer 我的 Google Play 控制台统计数据显示它仅适用于 Android 5.1

java.util.concurrent.TimeoutException: 
1. at android.graphics.Path.finalizer (Native Method)
2. at android.graphics.Path.finalize (Path.java:748)
3. at java.lang.Daemons$FinalizerDaemon.doFinalize (Daemons.java:206)
4. at java.lang.Daemons$FinalizerDaemon.run (Daemons.java:189)
5. at java.lang.Thread.run (Thread.java:818)

关于android - android.graphics.Path.finalize() 10 秒后超时的根本原因是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43161437/

相关文章:

android - 某些内部用户的应用程序未针对 Play 商店中的 Alpha 测试人员进行更新

android - youtube 视频未显示在 webView 中

android - 需要示例如何在新的 onSurfaceCreated 之后在 native 代码中恢复 opengl

java - disposeWhenFinished() 导致 API 21 崩溃

java - 如何使用自定义 TypefaceSpan 类更改字体大小

java - Android 项目中的 Junit 与响应式编程

android - 在应用程序处于后台时更改语言

javascript - Google Map API v3 在模拟器中显示

Android、谷歌地图 fragment 和 viewpager - 错误膨胀类 fragment

android - 为什么我会收到错误 "table is not created?"有什么问题?