Есть ли способ узнать результат уведомления, которое мы отправили с помощью NotificationManager
?
Недавно я обнаружил проблему с моими уведомлениями, потому что я не использовал каналы Android 8.0, поэтому многие пользователи не получали их: https://developer.android.com/training/notify-user/channels
Однако я не осознавал проблему, пока сам не увидел ее в своем телефоне.
Кроме того, я использую Google Analytics, чтобы отслеживать, сколько пользователей получают уведомления. Однако я не мог видеть проблему таким образом (у меня много ложных срабатываний).
Код очень прост и выглядит так:
private void sendNotification(int id, String title, String message, int color) {
if (userWantsToReceiveThisNotification){
Notification notification = buildNotification(); // This method now also creates a Notification Channel
notificationManager.notify(id, notification);
sendAnalyticsEvent();
}
}
То, что я ищу, - это какой-то результат действия notify
, поскольку он может быть успешным или нет, в зависимости от конфигурации пользователя, конфигурации приложения из настроек или даже от неправильной настройки (что было в моем случае).
Я ожидаю что-то вроде
boolean success = notificationManger.notify(id, notification);
или
notificationManger.notify(id, notification, callbackTellingSuccess);
, чтобы я мог правильно отследить количество пользователей, которые фактически получили уведомление.
Большое спасибо.