我们发现您最近交付的一个或多个问题 “应用程序名称”。您的交付成功,但您可能希望 在下次交付时纠正以下问题:
缺少推送通知权利 - 您的应用似乎包含 API用于注册Apple推送通知服务,但是 应用签名的权利不包括“aps-environment” 权利。如果您的应用使用Apple推送通知服务, 确保您的App ID已启用推送通知 配置门户,并在使用a签名您的应用程序后重新提交 包含“aps-environment”的分发配置文件 权利。请参阅本地和推送中的“供应和开发” 通知编程指南了解更多信息。如果你的应用程序 不使用Apple推送通知服务,不需要采取任何措施。 您可以从将来的提交中删除API以停止此警告。 如果您使用第三方框架,则可能需要联系 开发人员获取有关删除API的信息。
纠正问题后,您可以使用Xcode或Application 将新二进制文件上载到iTunes Connect的加载程序。
此致
App Store团队
这里的主要信息
如果您的应用使用Apple推送通知服务
但我没有添加任何推送通知API方法。
如何检查哪个库使用推送通知方法或框架?
答案 0 :(得分:1)
这是Apple验证软件中的一个错误。你可以忽略它。
来自https://forums.developer.apple.com/thread/15011:
我在MachO View中调查了这个问题以确认它是一个 假阳性。
我可以在AppDelegate.o中看到 - 虽然没有对应用程序的引用:didRegisterForRemoteNotificationsWithDeviceToken:在符号表中..
$ nm ./AppDelegate.o | grep application:didRegisterForRemoteNotificationsWithDeviceToken
$
我确实找到了grep输出匹配,正如其他评论者的报告所证实的那样。
$ grep application:didRegisterForRemoteNotificationsWithDeviceToken ./AppDelegate.o
Binary file ./AppDelegate.o matches
我将二进制文件加载到MachO View中(见下面的截图)并找到了应用程序:didRegisterForRemoteNotificationsWithDeviceToken:,application:didFailToRegisterForRemoteNotificationWithError:和所有其他UIApplicationDelegate方法 - 在__TEXT段中,__ objc_methname部分 - 存储的c字符串文字列表objc选择器名称
MachO查看__TEXT,__ objc_methname部分的屏幕截图,其中包含UIApplicationDelegate方法列表: http://imgur.com/JXgCjjm
我在这里用otool确认了这个发现:
$ otool -v -s __TEXT __objc_methname ./AppDelegate.o | grep didRegisterForRemoteNotificationsWithDeviceToken
000000000000bfbb application:didRegisterForRemoteNotificationsWithDeviceToken:
iTunes的审核流程是基于字符串的,而不是基于nm的,所以他们对didRegisterForRemoteNotificationsWithDeviceToken的简单grep将始终注册误报。