У меня телефон Motorola One Zoom, и эта модель не включает периодически светодиод, если уведомление пропущено (только один раз ...), и не выводит экран из спящего режима при получении уведомления ( с отключенным Peek Display, когда он включен, он загорается только один раз и не запускает ACTION_SCREEN_ON ).
Поэтому я решил создать свое собственное приложение, которое будит экран, когда уведомление получено и продолжает делать это периодически, пока я его не закрою, поэтому я его не пропускаю.
Я узнал, как разбудить экран с помощью WakeLock # acqu () , но Я не знаю, как определить, когда было опубликовано уведомление. Если при получении уведомления экран загорится, я мог бы зарегистрировать широковещательный приемник для ACTION_SCREEN_ON , но этого не происходит. Если бы Google не был таким параноиком, я мог бы использовать NotificationListenerService , но это может использоваться только системными приложениями.
Существуют ли другие законные способы узнать, есть ли непрочитанное уведомление, чтобы я мог включить экран в своем приложении и не пропустить чертово уведомление?