我最近更新为Xcode8。在开发过程中,我没有获得设备令牌。调查显示,我需要在“目标->功能”下启用推送通知。一旦这样做,我就可以在开发过程中很好地注册和接收通知。

我现在准备将应用程序推送到应用程序商店。我创建了存档并将其上传到iTunes connect,但收到一封电子邮件,说明:


  缺少推送通知权利-您的应用程序似乎已在Apple推送通知服务中注册,但应用程序签名的权利不包括“ aps-environment”权利。


我回到档案馆,但在权利列表中找不到aps环境。这样就可以理解为什么我收到了电子邮件。我已经尝试了几个小时,以获取包含aps-environment权利的存档(生产)版本,但我一直无法这样做。


我的AppID启用了用于开发和生产的推送通知
在目标->功能中,推送通知仍保持启用状态。生成的权利文件具有开发环境。但是,我读到在存档/上传到iTunes期间,环境会自动更改为生产环境。我已经将其手动更改为生产,但没有任何区别。


我决定使用TestFlight测试上载的版本,并确认通知不起作用。



当使用Xcode 7构建时,我的应用程序运行良好。这是Xcode的升级打破了这一点,而我却无法克服这一难题。任何帮助将不胜感激。

以下正是我的问题,但我没有足够的声誉点来添加评论以恢复讨论,所以我发布了一个新问题。我不介意是否将其标记为重复项,前提是我可以找到解决方案。 Xcode 8 Says Provisioning Profile Has aps-environment entitlement but after export Archive aps-environment is missing

最佳答案

检查文件platforms/ios/APP_NAME/Entitlemens-Release.plist是否与platforms/ios/APP_NAME/Entitlemens-Debug.plist相同

参数aps-environment必须同时出现在这两个参数中:
在您的platforms/ios/APP_NAME/Entitlemens-Release.plist
它必须是生产

platforms/ios/APP_NAME/Entitlemens-Debug.plist中-开发

关于ios - Xcode 8:存档的应用程序中缺少aps环境,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42750122/

10-10 20:49