я не получаю никаких уведомлений от firebase, но когда я тестирую приложение Pusher, я получаю уведомление.
это мои шаги, которые я сделал.помогите мне, если я сделал что-то не так.
1_ добавьте службу уведомлений, как показано ниже.
class NotificationService: UNNotificationServiceExtension {
var contentHandler: ((UNNotificationContent) -> Void)?
var bestAttemptContent: UNMutableNotificationContent?
override func didReceive(_ request: UNNotificationRequest, withContentHandler contentHandler: @escaping (UNNotificationContent) -> Void) {
self.contentHandler = contentHandler
bestAttemptContent = (request.content.mutableCopy() as? UNMutableNotificationContent)
if let bestAttemptContent = bestAttemptContent {
// Modify the notification content here...
bestAttemptContent.title = "hello"
bestAttemptContent.body = "this is test"
contentHandler(bestAttemptContent)
}
}
}
2 _ установите делегата уведомлений Center в себя делегатом приложения
Messaging.messaging().delegate=self
UNUserNotificationCenter.current().delegate = self
3_ токен устройства для отправки уведомления (я сохраняю его на сервере)
func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String) {
print("Firebase registration token: \(fcmToken)")
let dataDict:[String: String] = ["token": fcmToken]
NotificationCenter.default.post(name: Notification.Name("FCMToken"), object: nil, userInfo: dataDict)
// TODO: If necessary send token to application server.
// Note: This callback is fired at each app startup and whenever a new token is generated.
}
я отправляю этот FCMToken на сторону сервера (Java, весенняя загрузка)
4_ у меня естьвключено push-уведомление в Capabilities
5_ Я добавил файл .p12 в облачные сообщения о настройках проекта в консоли Firebase, но у меня есть большой вопрос для этого! ????я должен войти в firebase с учетной записью моего сервера?или сделать аккаунт для себя ??потому что я создал один для себя.
несколько советов:
мы команда, подобная серверной части (JAVA).web, android и ios
, которые работают с этим push-уведомлением на андроиде, но не на ios.
я думаю, что делаю что-то неправильно.
спасибоза чтение этой темы и помощь мне.