关于后台服务的 ANR
ANR on background services
我是运行 2个后台服务
一个检测摇晃,另一个检测长按电源键。
服务在后台运行良好,但有时当应用程序在后台时,我会一次又一次地弹出此消息 "Application_name isn't responding, Wait or stop"。这两个服务都是 onStartCommand()
上 START_STICKY 的正常服务
我已经在清单中声明了这两项服务。
还有一件事,有时当我打开我的应用程序时(在服务 运行 一段时间后),我在应用程序启动时看到一个纯白的屏幕,它一直停留在那里。
如果有人对这些场景有任何想法,请告诉我。如果您也需要查看代码,请告诉我。
- 查找后台发生的 UI 更新。
- 确保您的代码中没有不必要的 Timer()。如果存在,则在不需要时停止它们。
- 如果您正在使用 Geocoder,请尝试从后台线程获取位置。
- 最后一个选择是尝试实施 Leak Canary 并修补所有漏洞。
我是运行 2个后台服务
一个检测摇晃,另一个检测长按电源键。
服务在后台运行良好,但有时当应用程序在后台时,我会一次又一次地弹出此消息 "Application_name isn't responding, Wait or stop"。这两个服务都是 onStartCommand()
上 START_STICKY 的正常服务我已经在清单中声明了这两项服务。
还有一件事,有时当我打开我的应用程序时(在服务 运行 一段时间后),我在应用程序启动时看到一个纯白的屏幕,它一直停留在那里。
如果有人对这些场景有任何想法,请告诉我。如果您也需要查看代码,请告诉我。
- 查找后台发生的 UI 更新。
- 确保您的代码中没有不必要的 Timer()。如果存在,则在不需要时停止它们。
- 如果您正在使用 Geocoder,请尝试从后台线程获取位置。
- 最后一个选择是尝试实施 Leak Canary 并修补所有漏洞。