推送通知在 Apple Beta 测试 (TestFlight) 中不起作用
Posted
技术标签:
【中文标题】推送通知在 Apple Beta 测试 (TestFlight) 中不起作用【英文标题】:Push notifications don't work in Apple Beta Testing (TestFlight) 【发布时间】:2015-09-05 17:02:55 【问题描述】:推送通知在开发配置文件中运行良好,但一旦我尝试将应用程序加入 Beta 测试计划 (TestFlight),它们就不行了。
我尝试在切换到生产配置文件时执行所有必需的步骤,但仍然无法正常工作。这就是我所拥有的。
在会员中心:
ios Distribution 类型的证书。 应用程序 ID。命名(不是通配符)。为开发和分发启用推送通知 - 绿灯 - 生成并上传所有 SSL 证书。 iOS 分发配置文件,它使用上述证书和应用程序 ID,并在启用的服务中列出推送通知。在 XCode 中。目标 > 构建设置 > 代码签名:
配置文件 - iOS 分发,与会员中心中的相同。 代码签名身份(调试和发布)- iPhone 分发。我是否遗漏了一些(不是那么)明显的东西?任何帮助将不胜感激。
【问题讨论】:
与以往一样,上下文是关键。我没有提到我使用 parse.com 来处理我的推送通知,而我没有做的是将 .p12 生产证书上传到 parse.com 到让它工作。 另外,我还没有对此进行测试,但值得注意的是,我在 Xcode 中为 Project 和 Target 选择了分发配置文件 - 出于某种原因,它们是独立处理的。 【参考方案1】:一切似乎都是正确的。也许您应该准确说明什么不起作用:
应用根本没有注册到 APNS 令牌 应用正确注册但未收到推送处理以下检查
应用根本没有注册到 APNS 令牌
移动供应
确保在启用推送后通过 XCode 刷新您的 mobileprovisions,以确保其中包含正确的权利。您可以通过在编辑器中打开移动设备并查找aps-environment
键来检查这一点?
注册到 APNS
确保注册到 APNS 的代码不依赖于任何个人设置(例如缺少某些 SaaS 推送服务的推送 ID)
.
应用正确注册但未收到推送
检查收到的 pushToken 是否发送到服务器的正确环境(连接到 APNS 的环境) 检查您的服务器是否正在使用生产 APNS 证书【讨论】:
【参考方案2】:碰巧的是,我未能在我的问题中提供完整的上下文。我使用 Parse.com 来处理我的后端以及推送通知。所以我缺少的是 Parse.com 上的生产证书,而不仅仅是开发证书。因此,如果其他人在使用 Parse 并遇到类似问题,我希望这会有所帮助。
【讨论】:
以上是关于推送通知在 Apple Beta 测试 (TestFlight) 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章
Apple Push Notifications - 应用商店提交
Testflight beta 未向外部测试人员发送电子邮件或推送通知