推送通知在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并遇到类似的问题,我希望这是有帮助的。