У меня есть приложение будильника в магазине воспроизведения, которое очень хорошо работает на большинстве устройств, но, к сожалению, некоторые устройства сообщают, что будильник не срабатывает в установленное время, и я пришел к выводу, что есть устройства, которые ограничивают приложения работает в фоновом режиме и убивает менеджер тревоги!
Я обработал режим дозирования, используя следующий код:
if (Build.VERSION.SDK_INT >= 23)
{
alarmManager.setExactAndAllowWhileIdle(AlarmManager.RTC_WAKEUP, timeStamp, pendingIntent);
}
else if (Build.VERSION.SDK_INT >= 19)
{
alarmManager.setExact(AlarmManager.RTC_WAKEUP, timeStamp, pendingIntent);
}
else
{
alarmManager.set(AlarmManager.RTC_WAKEUP, timeStamp, pendingIntent);
}
Однако на некоторых устройствах этого кажется недостаточно.
Я прочитал, что служба переднего плана в любом случае может помешать системе убить приложение, однако я не могу этого гарантировать, поскольку у меня нет устройств, на которых возникает проблема.
Я хочу убедиться, что мой будильник работает отлично на всех устройствах и обрабатывает все сценарии, так что же можно сделать, чтобы убедиться, что мое приложение работает правильно и не уничтожено системой?