ios - 从测试飞行运行时,iOS didRegisterForRemoteNotifications返回不同的 token

标签 ios objective-c iphone xcode apple-push-notifications

我正在开发一个使用Apple的推送通知的iPhone应用程序。我已按照此处列出的步骤操作:https://parse.com/tutorials/ios-push-notifications,通过Xcode连接设备来运行应用程序时,设备会收到通知。但是,当我将应用程序上载到Test Flight时,该应用程序无法收到通知。经过进一步调查,我发现

NSString * token = [NSString stringWithFormat:@"%@", deviceToken];

通过Xcode运行应用程序时会有所不同,从Test Flight运行应用程序时会有所不同。这是为什么?我该如何解决?我正在使用APNS发送推送通知。

最佳答案

您需要检查证书。在注册捆绑包ID时,您将获得生成两个配置文件以及相应的两个推送通知证书dev和production的选项。当您从Xcode在开发人员模式下运行应用程序时,即,当您将Xcode目标配置为使用指定的开发配置文件运行时,您的服务器需要使用dev / sandbox证书,该证书会从Apple的沙箱服务器返回 token (在您的情况下会发生这种情况) 。当您使用产品证书签署应用程序时,即在生成ipa时使用产品供应配置文件,您的服务器需要使用产品推送证书。在您的情况下,您可能上传了使用产品证书签名的应用,而服务器仍使用开发证书。检查一下。祝好运。

关于ios - 从测试飞行运行时,iOS didRegisterForRemoteNotifications返回不同的 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29813167/

相关文章:

android - 如何在react-native应用程序中打开网站(Android和iOS)

ios - 证书过期后,是否有必要在苹果创建一个新的基于推送通知的配置文件

iphone - 如何避免 iOS 设备图库中的图像重复?

ios - 在 Storyboard中设置约束时,Xcode 不断崩溃

javascript - 调用默认的 Phonegap 后退按钮处理程序

iphone - 查找最小/最大纬度和经度

ios - 有没有办法获取 UILabel 文本的 shadowPath?

ios - 关于一行中连续声明的 Swift 错误

ios - 当颜色清除 SwiftUI 时,点击操作不起作用

iphone - 浏览器和应用程序的响应不同?