Почему мое приложение для Android иногда очень быстро разряжает батарею?

Несколько пользователей моего приложения сообщили, что их заряд аккумулятора составляет около 1% в минуту, когда мое приложение работает в фоновом режиме. Мне не удалось воспроизвести эту проблему даже при использовании тех же учетных данных на той же модели устройства, на котором у пользователя была ошибка. Переустановка приложения, по-видимому, не решает проблему, и, похоже, не существует какой-либо конкретной версии Android или устройства, связанного с этой проблемой. Все отчеты, которые у меня были, - это устройства Samsung под управлением 4.x, но это также довольно полно отражает мою пользовательскую базу в целом. Моя фоновая служба прослушивает сообщения GCM и изменения в списке контактов, а также выполняет HTTP-запрос примерно каждый час, используя ScheduledExecutorService.

Следует также отметить, что я не использую никаких блокировок в приложении.

Мне интересно, есть ли у кого-нибудь какие-либо идеи относительно того, какие ошибки могут вызывать подобные проблемы, или даже какие инструменты или методы могут быть эффективными для сужения моей проблемной области.

2 ответа

Если бы я был тобой, я бы

  1. Начните тестирование с выключенным Wi-Fi.

  2. Протестируйте свое приложение, имитируя высокую задержку (у Чарльза есть бесплатная 30-дневная пробная версия)

  3. И добавьте код для контроля уровня заряда батареи и состояния зарядки.

Извини, я не могу ответить лучше.

О каком проценте пользователей сообщают об этой проблеме? Если вы попробовали это на устройстве Samsung с 4.x и у вас не возникло проблем, то, кроме вашего кода, проблема должна быть.

Другие вопросы по тегам