iOS Firebase Cloud Messaging не работает, пока пользователь не переключит уведомления в приложении Настройки - PullRequest
1 голос
/ 26 апреля 2019

У меня следующая проблема с Firebase Cloud Messaging (FCM) на iOS:

1) При первом запуске приложения пользователь принимает уведомления (оповещения, значки, звуки).

2) Пользователь продолжает использовать приложение и не получает никаких уведомлений Firebase.У меня есть другой клиент, получающий уведомления, поэтому я могу убедиться, что они отправляются.

3) Пользователь переходит в приложение «Настройки iOS», выключает и снова включает уведомления для моего приложения, а затем возвращается в приложение.

4) Пользователи правильно получают все следующие уведомления Firebase.

Я использую только Firebase Messaging для тихих уведомлений (т.е. «content_available»: true), и я запрашиваю уведомления пользователей со следующим быстрым кодом:

// Setup APN
UNUserNotificationCenter.current().delegate = self
UNUserNotificationCenter.current().requestAuthorization(options: [.alert, .badge, .sound]) { granted, error in
    callback(granted)
}
UIApplication.shared.registerForRemoteNotifications()

// Setup Firebase Messaging
Messaging.messaging().delegate = self

Пример сообщения

Все мои сообщения Firebase имеют вид:

[
    "type": <string>,    // Message name 
    "aps": {
        "content-available" = 1;
    }, 
    "gcm.message_id": <int>, 
    "payload": {
        "id": <string>,    
         ...             // Other JSON fields
    }
]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...