Прошлой ночью я тестировал Push-уведомления из Firebase в своем приложении для iOS, и оно работало, как и ожидалось
Мне удалось отправить уведомление из Cloud Function на определенный токен FCM. Это утреннее уведомление не приходит при использовании того же метода.
Облачная функция
Вот функция, которую я использую для отправки уведомления:
function sendNotification(title: string, body: string, token: string): Promise<void> {
const message: admin.messaging.Message = {
apns: {
headers: {
'apns-priority': '10'
},
payload: {
aps: {
alert: {
title: title,
body: body,
},
sound: "default"
}
}
},
token: token
}
return admin.messaging().send(message).then(response => { console.log(`Notification response ${response}`) }).then(justVoid)
}
Здесь token
- это токен, полученный от InstanceId в приложении iOS. Когда эта функция запущена, я вижу следующее в журнале облачных функций веб-консоли Firebase:
Проекты с ответами на уведомления / имя-проекта / messages / 0: 1571998931167276% 0f7d46fcf9fd7ecd
Насколько я понимаю, это сообщение об успехе. Поэтому я ожидаю, что уведомление появится на устройстве в этот момент, но ничего.
iOS App
Я следовалэто руководство по устранению неполадок, и я уверен, что установка верна: https://firebase.google.com/docs/cloud-messaging/ios/first-message?authuser=0
Я попытался переустановить приложение на устройстве, на котором я тестирую: я проверил, что приложение выполняет этишаг после переустановки:
вызов: UNUserNotificationCenter.current().requestAuthorization(options:, completionHandler:)
вызов: UIApplication.shared.registerForRemoteNotifications()
прослушайте обновленный токен FCM, выполнив: func messaging(_ messaging:, didReceiveRegistrationToken fcmToken:)
вызов: InstanceID.instanceID().instanceID(handler:)
дважды проверьте, разрешены ли уведомления для моегоприложение в приложении настроек iOS.
Тестовое уведомление с консоли
Я пытался отправить тестовое уведомление вот Notification Composer , использующий последний токен FCM для тестового устройства, но это уведомление также не отображается, и оно не дает мне никаких отзывов на экране,Уведомление успешно отправлено или нет.
Что я здесь не так делаю?
Есть предложения по устранению этой проблемы?