ANR на фоновые услуги - PullRequest
       30

ANR на фоновые услуги

0 голосов
/ 22 апреля 2019

Я использую 2 фоновых службы

Один для обнаружения сотрясений, а другой для обнаружения длительного нажатия кнопки питания.

Сервисы прекрасно работают в фоновом режиме, но иногда, когда приложение находится в фоновом режиме, я снова и снова выхожу на это сообщение «Имя_приложения не отвечает, подождите или остановите».Обе службы являются обычными службами с START_STICKY в onStartCommand ()

Я объявил обе службы в манифесте.

И еще одна вещь: иногда, когда я открываю свое приложение (после того, как сервисы некоторое время работают), я получаю простой белый экран при запуске приложения, и оно просто остается там.

Если у кого-нибудь есть идеи по поводу этих сценариев, пожалуйста, дайте мне знать.и если вам нужно увидеть код тоже, дайте мне знать.

1 Ответ

1 голос
/ 23 апреля 2019
  1. Найдите обновления пользовательского интерфейса, которые происходят в фоновом режиме.
  2. Убедитесь, что в вашем коде нет ненужного Timer ().Если есть, то остановите их, когда они не нужны.
  3. Если вы используете Geocoder, попробуйте извлечь местоположение из фонового потока.
  4. Последний вариант - попытаться реализовать Leak Canary и исправить всеутечки.
...