Прослушиватель уведомлений Android 4.3.X
Я пытаюсь создать приложение, которое использует новый сервис Android, чтобы читать все уведомления, а также удалять их, но это не работает. В Манифесте у меня есть:
<service android:name="com.tortuga.shutapp.NotificationListener"
android:label="@string/app_name"
android:permission="android.permission.BIND_NOTIFICATION_LISTENER_SERVICE">
<intent-filter >
<action android:name="android.service.notification.NotificationListenerService" />
</intent-filter>
</service>
У меня есть класс NotificationListener, который расширяет NotificationListenerService. Я переопределяю два метода: onNotificationPosted(StatusBarNotification sbn), onNotificationRemoved(StatusBarNotification sbn).
Я дал ему разрешение в разделе Безопасность-> Доступ к уведомлению... Но я все еще не могу прочитать ни одно уведомление, которое появляется. В чем проблема?
Спасибо!
2 ответа
Android кэширует подшивку, возвращаемую из onBind, поэтому, если ваши действия очень похожи, и ваше приложение сначала связывается, то ваша подшивка будет возвращена системной вместо системной привязки (возвращается из super.onBind(intent)
К счастью, Android-ключ связывает кеш в зависимости от намеренного действия. Я хотел бы дать вашему намерению какое-то фиктивное действие, чтобы оно не смешивалось с системным. Я решил ту же проблему, сделав это. ПРИМЕЧАНИЕ: категорий недостаточно.
Убедитесь, что вы дали приложению разрешение на прослушивание уведомлений, снова включите его, чтобы восстановить службу