IOS 缺少推送通知授权



Apple Store的消息非常混乱。

在我的Corodova应用程序中,我使用的是来自GITHUB的第三方推送通知服务和API,而不是Apple推送通知服务。

在设置证书、应用程序标识符和配置文件时,为了使用 XCODE 构建应用程序,我没有选择"推送通知"。

构建并上传到存储并保留在:


缺少推送通知权利 - 您的应用似乎包含用于注册 Apple 推送通知服务的 API,但应用签名的权利不包括"aps-environment"授权。如果你的应用使用 Apple 推送通知服务,请确保在预配门户中为推送通知启用应用 ID,并在使用包含"aps-environment"权利的分发预配配置文件对应用进行签名后重新提交。有关详细信息,请参阅《本地和推送通知编程指南》中的"配置和开发"。如果您的 App 不使用 Apple 推送通知服务,则无需执行任何操作。您可以从将来的提交中删除 API 以停止此警告。如果您使用第三方框架,则可能需要与开发人员联系以获取有关删除 API 的信息。 更正問題後,您可以使用 Xcode 或 Application Loader 將新的二进制文件上傳到 iTunes Connect。


现在我很困惑。

它说:"如果您的应用程序不使用Apple推送通知服务,则无需执行任何操作。

好。。。。然后"您可以从将来的提交中删除 API 以停止此警告。为什么要从我的应用程序中删除第三方的 API???这条消息并没有引导我找到任何解决方案。

这一次,我在证书、应用标识符和预配配置文件中选择了"推送通知",然后重新构建了应用并再次提交。

我做

对了吗,我做对了吗?

是的。你做错了。
来自应用商店审核指南:

5.1 在不使用 Apple 推送通知 (APN) API 的情况下提供推送通知的应用将被拒绝

如果您还没有阅读本文档,我鼓励您阅读它。

我建议您在应用程序中查找以下两种方法:

- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken

- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error

如果您不想使用 APNs,请删除这两种方法,也许还可以删除与远程通知相关的所有方法。

我从未遇到过这个问题,但我希望它对您有用。

最新更新