关于这个臭名昭著的错误已经有很多帖子了:
no valid 'aps-environment' entitlement string found for application
但不同的是,对我来说,它之前工作得很好,现在问题又出现了。
我们在 Xcode 6 中更新了适用于 iOS8 的项目,我们创建了一个新的 Ad Hoc 分发配置文件(Xcode 以某种方式摆脱了旧的),像以前一样使用 Testflight 安装了 Ad Hoc 构建。
我试图检查是否有任何问题:
- bundle ID 正确
- App ID 已正确配置为在生产环境中使用通知
- 通知证书仍然有效
- 新的 AdHoc 配置文件声称已启用通知。
在“aps-environment”错误(当设备尝试注册通知时)之前,似乎没有其他错误。新的 AdHoc 配置文件会不会以某种方式搞砸了?任何人都知道冲突可能是什么?
最佳答案
Xcode 6 似乎会自动为您生成配置文件(XC Ad Hoc : ...)。 当您尝试为 AdHoc 导出 ipa 时,请查看配置文件使用的包 ID。 如果 bundle id 包含通配符 (*),则它不适用于推送通知。
在我的例子中,我从认证中心的应用程序 ID 列表中删除了通配符包 ID,并从 Xcode 帐户设置中刷新了配置文件。之后,Xcode 生成了带有完整应用 ID 的 AdHoc 配置文件,并且推送在 AdHoc 版本中再次开始工作。
关于iOS 8 - 通知在新的 Ad Hoc 版本中停止工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25973792/