FinalizerWatchdogDaemonKiller 需要排除 Android 9.0以上
- Dominant language
- Kotlin
- Stars
- 5.1k
- Forks
- 591
- PR merge metrics
- No merged PRs in 30d
Description
FinalizerWatchdogDaemonKiller 中并没有做ROM兼容适配,统一的停止了 FinalizerWatchdogDaemon,而根据张绍文的课程指导,建议9.0以下可以这样用,并且在项目实际使用中,发现9.0华为手机崩溃日志中出现
# Shutdown thread
java.lang.IllegalStateException
not running
1 java.lang.Daemons$Daemon.stop(Daemons.java:138)
2 java.lang.Daemons.stop(Daemons.java:60)
这里建议大家首先获取厂商设置的真实时间
```
public static long getDaemonsTime() {
try {
Class c = Class.forName("java.lang.Daemons");
Field maxField = c.getDeclaredField("MAX_FINALIZE_NANOS");
maxField.setAccessible(true);
return maxField.getLong(c);
} catch (Exception e) {
e.printStackTrace();
}
return 0;
}
```
超过30s的都不建议停止,而应该找项目中有问题的代码。
Contributor guide
Assessment
This issue has not been assessed yet.