牛奶送货员的推送ANE在iOS10上无法工作

8
我正在使用Milkman EasyPush ANE在我的iOS和Android应用程序中推送通知,与OneSignal后端一起使用。
iOS 9和Android都没有问题,但是没有iOS 10设备注册。 我使用AnimateCC(与Flash CC Pro相同)和Air SDK 23构建。
如果我在iOS 10设备上进行调试并监听onRegFailed事件,则会收到以下消息:
“no valid aps-environment entitlement found for application”
如上所述,在iOS 9上没有问题。
当我将IPA上传到App Store时,我收到以下消息:
Missing Push Notification Entitlement - 您的应用包括Apple的推送通知服务API,但aps-environment授权缺失于应用程序签名中。要解决此问题,请确保您的App ID已在Provisioning Portal中启用推送通知。然后,使用包含aps-environment授权的分发配置文件签署您的应用程序。这将创建正确的签名,然后您可以重新提交应用程序。有关更多信息,请参见本地和推送通知编程指南中的“配置和开发”。如果您的应用程序不使用Apple推送通知服务,则无需采取任何操作。您可以在未来的提交中删除API以停止此警告。如果您使用第三方框架,则可能需要联系开发人员获取有关删除API的信息。
但是为什么在iOS 9上工作而在iOS 10上不工作呢?
谢谢你的帮助。
2个回答

6

iOS 10需要在Capabilities中启用它,参见截图。

enter image description here


但这是在Xcode中,对吧?由于我通过Animate CC进行编译并使用Application Loader上传,那么我应该如何使用Xcode呢? - nbuechi

2
如果您使用Adobe Animate CC,请查看该指南在AIR iOS应用程序中使用推送通知,其中他们描述了如何添加推送通知的基本权利和解决iOS应用程序中常见的Adobe AIR安装错误,第"在provisioning profile中未添加应用程序.xml文件中列出的功能"部分:

示例:在application.xml文件中添加了Entitlements标记,但是在provisioning profile中未启用推送通知服务。

... 
<Entitlements><![CDATA[    <key>aps-environment</key>    <string>development</string>     ]]> 
</Entitlements> 
... 

如果您对苹果端的推送通知设置有任何问题,请查看苹果公司的指南 - 添加功能,第配置推送通知部分。请注意保留HTML标记。

我忘了提到“为什么”。这与iOS版本无关,而是与Xcode有关。苹果在Xcode 8中更改了Xcode定义应用程序的权限的方式。 - dive
亲爱的Dive,非常感谢!但是我在application.xml中有以下内容: <key>application-identifier</key> <string>SWXA5H99MY.com.winterlife.boscogurin</string> <key>aps-environment</key> <string>production</string> 这就是我不理解的地方... - nbuechi
@nbuechi,你应该自己添加。有关标识符和环境的说明可以在苹果文档“配置推送通知”中找到。 - dive
感谢。但是我已经按照所写的手动将其添加到xml中了。它总是给我同样的错误。但只有在iOS 10设备上... - nbuechi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接