我们有一个基于Cordova的iOS应用程序,该应用程序不使用推送通知。从Cordova 3.5.0开始,我们对应用商店进行的每次提交都会产生一封电子邮件,通知我们我们的应用包含用于向Apple的Push Notification Service注册的API,但没有Push Notification的权利。
每次都接受该应用程序,因为我们实际上不对任何内容使用推送通知。但是,如果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])有一个或多个问题
收件人:[开发人员]亲爱的开发人员,
我们发现您最近为“ [app]”投放的商品时遇到一个或多个问题。交付成功,但是您可能希望在下一次交付中更正以下问题:
缺少推送通知权利-您的应用似乎包含用于向Apple推送通知服务注册的API,但是应用签名的权利不包括“ aps-environment”权利。如果您的应用程序使用Apple Push Notification服务,请确保在Provisioning Portal中为您的Push ID启用了您的App ID,并在使用包含“ aps-environment”权利的Distribution Provisioning配置文件对您的应用程序进行签名后重新提交。有关更多信息,请参见《本地和推送通知编程指南》中的“ Provisioning and Development”。如果您的应用程序不使用Apple Push Notification服务,则无需采取任何措施。您可以从以后的提交中删除该API,以停止此警告。如果您使用第三方框架,
解决问题之后,可以使用Xcode或Application Loader将新的二进制文件上传到iTunes Connect。
问候,
App Store团队
克里克(Krik)是对的!我发现此API调用/Classes/AppDelegate.m
肯定是由Cordova 3.5生成的。
我暂时没有尝试过,但是可以肯定在xCode中注释了这些行,以避免Apple发出警告。
- (void) application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
// re-post ( broadcast )
NSString* token = [[[[deviceToken description]
stringByReplacingOccurrencesOfString: @"<" withString: @""]
stringByReplacingOccurrencesOfString: @">" withString: @""]
stringByReplacingOccurrencesOfString: @" " withString: @""];
[[NSNotificationCenter defaultCenter] postNotificationName:CDVRemoteNotification object:token];
}
- (void) application:(UIApplication *)application
didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
{
// re-post ( broadcast )
[[NSNotificationCenter defaultCenter] postNotificationName:CDVRemoteNotificationError object:error];
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句