本文重点介绍Android ANR的表现、原理以及规避或解决方法。
1 APP ANR详见参考资料[2]第2.4小节。
2 SystemServer ANR实现Watchdog.Monitor接口,然后调用Watchdog.getInstance().addMonitor()将类对象添加到监控列表Watchdog.mMonitors,即可监控该对象是否发生死锁,默认有6个类添加到了该列表中:
| ActivityManagerService | 详见参考资料[2] |
| WindowManagerService | 详见参考资料[3] |
| PowerManagerService | 详见参考资料[4] |
| InputManager | frameworks/base/services/java/com/android/server/wm/InputManager.java |
| MountService | frameworks/base/services/java/com/android/server/MountService.java |
| NetworkManagementService | frameworks/base/services/java/com/android/server/NetworkMana |



