我在 GooglePlay ANR Crash log 中得到了这个异常,这个异常只发生在 Android 6.0 设备中。什么是“com.qualcomm.qti.Performance” 为什么我的代码中没有找到它?
java.lang.Error: FATAL EXCEPTION [FinalizerWatchdogDaemon]
Unity version : 2018.4.2f1
Device model : LeMobile Le X526
Device fingerprint: Letv/Le2_WW/le_s2_ww:6.0.1/IIXOSOP5801910121S/44:user/release-keys
Caused by
at com.qualcomm.qti.Performance.native_deinit (Native Method)
at com.qualcomm.qti.Performance.finalize (Performance.java:263)
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)
编辑:
我找到了源代码: https ://pastebin.com/quBM3gVe https://github.com/dzo/frameworks_base/blob/master/core/jni/org_codeaurora_Performance.cpp
我发现了这个:https ://github.com/tbruyelle/RxPermissions/issues/189 有人得到几乎相同的崩溃日志
java.lang.UnsatisfiedLinkError: No implementation found for void com.qualcomm.qti.Performance.native_deinit() (试过 Java_com_qualcomm_qti_Performance_native_1deinit 和 Java_com_qualcomm_qti_Performance_native_1deinit__)
java.lang.UnsatisfiedLinkError: No implementation found for void com.qualcomm.qti.Performance.native_deinit() (tried Java_com_qualcomm_qti_Performance_native_1deinit and Java_com_qualcomm_qti_Performance_native_1deinit__)
at com.qualcomm.qti.Performance.native_deinit(Native Method)
at com.qualcomm.qti.Performance.finalize(Performance.java:263)
at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:222)
at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:209)
at java.lang.Thread.run(Thread.java:762)
==== 更新 ====
这种异常形式FinalizerWatchdogDaemon
所以异常概率是TimeoutException
,大约是Android GC,Finalize()超时。但我仍然不知道发生了什么。