推送通知在 TestFlight 上不起作用

Posted

技术标签:

【中文标题】推送通知在 TestFlight 上不起作用【英文标题】:Push notifications doesn't work on TestFlight 【发布时间】:2017-01-17 20:55:16 【问题描述】:

我使用 Firebase 发送通知:

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool             
        FIRApp.configure()            
        let notificationTypes: UIUserNotificationType = [UIUserNotificationType.alert, UIUserNotificationType.badge, UIUserNotificationType.sound]
        let pushNotificationSettings = UIUserNotificationSettings(types: notificationTypes, categories: nil)            
        application.registerUserNotificationSettings(pushNotificationSettings)
        application.registerForRemoteNotifications()            
        UIApplication.shared.applicationIconBadgeNumber = 0

        return true
            

    func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable : Any])             
        print("MessageID : \(userInfo["gcm_message_id"]!)")
        print (userInfo)
    

    func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data)             
        FIRInstanceID.instanceID().setAPNSToken(deviceToken, type:FIRInstanceIDAPNSTokenType.sandbox)
        FIRInstanceID.instanceID().setAPNSToken(deviceToken, type:FIRInstanceIDAPNSTokenType.prod)            
    

我在 Firebase 上上传了两个证书:“APNs Development ios”作为开发证书。和“Apple Push Services”作为分发(生产)证书:

我在开发模式下收到通知,但在 TestFlight 下载我的应用时没有收到通知。

【问题讨论】:

如果您使用的是 TestFlight,我假设它是 AdHoc 构建? AdHoc 构建使用生产 APNS 环境 - Firebase 是否有权访问您的生产 APNS 推送通知证书? 不,我将新版本上传到 App Store 并在外部测试中添加了我的电子邮件。我还在 Firebase 上上传了分发证书 发行证书是什么意思? APNS证书/p12/pem呢? 我在 Firebase 上上传了“APNs Development iOS”证书和“Apple Push Services”证书。我附上截图:i.imgsafe.org/e931d227ff.png 如果你上传到应用商店,并使用开发证书,那是行不通的。应用商店构建使用生产环境,因此需要生产证书。 【参考方案1】:

我删除了证书并创建了新证书并再次上传。现在可以了。

【讨论】:

以上是关于推送通知在 TestFlight 上不起作用的主要内容,如果未能解决你的问题,请参考以下文章

推送通知在 Apple Beta 测试 (TestFlight) 中不起作用

上传到 TestFlight 时推送通知不起作用

推送通知在 iOS 5.0.1 上不起作用

phonegap 推送通知在 iPhone 上不起作用

为啥远程推送通知在 iOS 10 上不起作用?

GCM 推送通知在 iOS 上不起作用