前一天,我用来测试推送通知的iPhone正在接收推送通知,但由于某种原因,今天它们不是。
当它工作时,我会调用完成处理程序在此函数中显示通知:
@available(iOS 10, *)
extension AppDelegate : UNUserNotificationCenterDelegate {
func userNotificationCenter(_ center: UNUserNotificationCenter,
willPresent notification: UNNotification,
withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {
let userInfo = notification.request.content.userInfo
print("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~")
completionHandler([.alert, .badge, .sound])
}
但是,该功能似乎不再被调用。我看到任何印刷品的唯一功能就是这个:
extension AppDelegate : FIRMessagingDelegate {
// Receive data message on iOS 10 devices while app is in the foreground.
func applicationReceivedRemoteMessage(_ remoteMessage: FIRMessagingRemoteMessage) {
print("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!")
print(remoteMessage.appData)
}
}
我从Firebase Send a Notification to an iOS Device docs获得了所有这些功能。我真正想要的是能够从Apples APNs服务器接收推送通知。我在我的控制台APNs token retrieved: 32 bytes
中收到此行,并且推送通知在昨天也正常工作,所以我不确定它为什么会停止。
我唯一怀疑让它停止工作的是我删除并重新安装了iPhone上的应用程序,除此之外我根本没有弄乱AppDelegate
中的代码。任何人都可以帮我弄清楚为什么我的推送通知可能已经停止发送了?
注意我使用Firebase Messaging topics
从我的云功能发送这些消息,我可以确认正确发送消息,因为我在上面的第二个功能中接收了它们,就像昨天收到的那样,不是第一个。我使用admin.messaging().sendToTopic(pet_Id, payload, options);
发送通知。
这是我的full AppDelegate.swift file,如果有人能帮我解决这个问题,我会非常感激!
答案 0 :(得分:0)
我有类似的东西,
以下是我的回答 - Firebase Push Notifs Problem
这可能是问题,
我转过身来,从apple开发中心删除了证书并重新创建了它们,这使得一切正常。
" 我也将这行代码设置为
FIRInstanceID.instanceID().setAPNSToken(deviceToken as Data, type: FIRInstanceIDAPNSTokenType.sandbox)
当我推送到应用商店时,我会将其更改为.prod
。"