我们有一个基于Cordova的iOS应用程序,不使用推送通知。从Cordova 3.5.0开始,每次我们向应用商店提交应用程序,都会收到一封电子邮件,告知我们的应用包含用于注册苹果推送通知服务的API,但没有推送通知授权。
由于我们实际上并未使用推送通知,因此每次应用程序都被接受了。但是,我希望避免触发此警告,以防万一Apple决定改变其有关这些API引用是否可接受的政策。
我们在之前的Cordova版本中没有遇到过这个问题,并且自己没有在Objective-C方面做任何工作。Cordova 3.5是否存在已知问题?搜索结果显示一些人遇到了类似的问题,但我只找到了为想要添加推送授权的人提供解决方案(而不是找出Push API被引用的位置并将其移除)。我查看了Cordova的问题ML,但在那里没有找到任何东西。如果其他人知道任何线索,将不胜感激!
使用的插件:
org.apache.cordova.console
org.apache.cordova.device
org.apache.cordova.file
org.apache.cordova.inappbrowser
org.apache.cordova.media
org.apache.cordova.network-information
org.apache.cordova.splashscreen
相关电子邮件片段,具体信息用 [ ] 替换:
从:iTunes Store
日期:2014年9月17日,下午3:49
主题:iTunes Connect:您的应用程序“[appName]”(Apple ID:[id])存在一个或多个问题
收件人:[developer]亲爱的开发者,
我们发现您最近提供的“[app]”存在一个或多个问题。您的提交已成功,但您可能希望在下一次提交中更正以下问题:
缺少推送通知授权 - 您的应用似乎包含用于注册苹果推送通知服务的API,但是应用程序签名的授权不包括“aps-environment”授权。如果您的应用程序使用了苹果推送通知服务,请确保在预配门户中启用了Push Notification的App ID,并在使用包含“aps-environment”授权的分发预配文件签署应用程序后重新提交。有关更多信息,请参阅“本地和推送通知编程指南”中的“预配和开发”。如果您的应用程序不使用苹果推送通知服务,则无需采取任何措施。您可以从未来的提交中删除API以停止此警告。如果您使用第三方框架,则可能需要联系开发人员以获取有关删除API的信息。
纠正问题后,您可以使用Xcode或Application Loader将新二进制文件上传到iTunes Connect。
敬礼,
App Store团队