推送通知在Apple Beta测试(TestFlight)中不起作用
使用开发配置文件推送通知工作正常,但是一旦我尝试将应用程序放在Beta测试程序(TestFlight)上,他们就不会。
切换到生产配置文件时,我尝试按照所有必需的步骤操作,但它仍然无效。 这就是我所拥有的。
在会员中心:
- iOS分发证书。
- 应用ID。 命名(不是通配符)。 为开发和分发启用推送通知 – 绿灯 – 生成并上载所有SSL证书。
- iOS分发配置文件,使用上述证书和应用程序ID以及在已启用的服务中列出推送通知。
在XCode中。 目标>构建设置>代码签名:
- 供应配置文件 – iOS分配,与成员中心相同。
- 代码签名身份(包括Debug和Release) – iPhone Distribution。
我错过了一些(不是那么)明显的东西吗? 任何帮助将不胜感激。
一切似乎都是正确的。 也许你应该准确一些不起作用:
- 应用程序根本没有注册到APNS令牌
- 应用正确注册但推送没有收到
处理以下检查
应用程序根本没有注册到APNS令牌
移动配置
确保在启用推送后通过XCode刷新移动设备,以确保其中包含正确的权利。 您可以通过在编辑器中打开移动设备并查找aps-environment
密钥来检查这一点吗?
注册APNS
确保注册到APNS的代码不依赖于任何个人设置(例如缺少某些SaaS推送服务的推送ID)
。
应用正确注册但推送没有收到
- 检查收到的pushToken是否已发送到服务器的正确环境(连接到APNS的环境)
- 检查您的服务器是否使用了生产APNS证书
碰巧的是,我没有在我的问题中提供完整的上下文。 我使用Parse.com来处理我的后端以及推送通知。 所以我缺少的是Parse.com上的生产证书,而不仅仅是开发证书。 所以,如果其他人正在使用Parse并遇到类似的问题,我希望这是有帮助的。