0

Я работаю с FCM, и согласно документации «уведомление доставляется на системный лоток устройства». Итак, как присоединить ожидающее намерение или зарегистрировать широковещательную/обратную связь, когда сообщение уведомления отклоняется пользователем?Как получить трансляцию или обратный вызов, когда сообщение уведомления fcm уволено пользователем?

Есть ли способ сделать это? Или я должен использовать сообщения данных и строить уведомление вручную с ожидающим намерения получать трансляцию, если уведомление отклонено?

EDIT - Решение

public class NotificationListener extends NotificationListenerService { 
    private boolean isSafeToExecute, isNotificationAccessEnabled; 



    @Override 
    public void onNotificationPosted(StatusBarNotification sbn) { 
      super.onNotificationPosted(sbn); 
    } 

    @Override 
    public void onNotificationRemoved(StatusBarNotification sbn) { 
      Log.e("removed", sbn.getNotification().getClass().getSimpleName()); 
    } 

    @Override 
    public void onListenerConnected() { 
     super.onListenerConnected(); 
     isSafeToExecute = true; 
    } 

    @Override 
    public void onListenerDisconnected() { 
     super.onListenerDisconnected(); 
     isSafeToExecute = false; 
    } 
    @Override 
    public IBinder onBind(Intent mIntent) { 
     IBinder mIBinder = super.onBind(mIntent); 
     isNotificationAccessEnabled = true; 
     return mIBinder; 
    } 

    @Override 
    public boolean onUnbind(Intent mIntent) { 
     boolean mOnUnbind = super.onUnbind(mIntent); 
     isNotificationAccessEnabled = false; 
     return mOnUnbind; 
    } 
} 

выше один работает. Я ранее не переоценил onBind и OnUnbind, что вызвало проблему. Попросите пользователя предоставить доступ к уведомлениям, если не предоставлен, эта ссылка поможет. Check if user has granted NotificationListener access to my app

ответ

1

Вы должны идти с onNotificationRemoved (StatusBarNotification SBN)

Это позволит вам ловить в тех случаях, когда пользователь удален уведомление или Andorid система отозвал уведомление.

+0

Привет, вы использовали службу NotificationListenerService с уведомлениями FCM? – Debanjan

+0

Да, проверьте эту ссылку для получения дополнительной информации, https://developer.android.com/reference/android/service/notification/NotificationListenerService.html –

+0

Я пробовал, но я не получаю уведомление, когда уведомление fcm отклонено или onNotificationPosted. Нужно ли запускать сервис вручную, используя startService(), или намерение это сделает? Я сделал точно как ссылку. Еще одна вещь, когда я перехожу в Настройки-> Безопасность-> Доступ к уведомлению, Он не показывает мое приложение, вместо этого он показывает «Никакие приложения на этом устройстве не способны читать уведомления» – Debanjan

 Смежные вопросы

  • Нет связанных вопросов^_^