Xcode8提交错误 - 如何找出iOS10上究竟需要特定权限的内容

时间:2016-11-07 10:19:48

标签: ios itunesconnect xcode8

尝试提交应用时,出现以下错误:

  

此应用尝试在不使用的情况下访问隐私敏感数据   描述。应用程序的Info.plist必须包含   NSCalendarsUsageDescription键,其字符串值解释为   用户应用程序如何使用此数据。

我知道我可以添加一个描述以使新验证器满意,但我的应用程序不使用用户日历,所以我宁愿消除使用它的依赖项,如果可能的话。我无法弄清楚如何找出实际使用日历的依赖项,如何检查?

我的项目具有以下依赖项:

pod 'SnapKit', '0.22.0'
pod 'FBSDKCoreKit'
pod 'Alamofire', '~> 3.5'
pod "AFNetworking", '~> 3.1'
pod 'SDWebImage'      
pod 'TTTAttributedLabel'
pod 'Masonry'
pod 'CocoaLumberjack/Swift', '2.3'
pod 'SZTextView'
pod 'HockeySDK', :subspecs => ['CrashOnlyLib']
pod 'GoogleMaps'
pod 'BugfenderSDK'
pod 'AppsFlyerFramework', '4.5.0'
pod 'CHTCollectionViewWaterfallLayout'
pod 'Firebase'
pod 'Firebase/Messaging'
pod 'CRToast', '~> 0.0.7'
pod 'Google-Mobile-Ads-SDK'
pod 'UIColor_Hex_Swift', :git => 'https://github.com/yeahdongcn/UIColor-Hex-Swift.git', :tag => '2.3'

链接的框架:

List of linked frameworks

2 个答案:

答案 0 :(得分:1)

所以我联系了Apple,他们实际上有一个很好的列表,列出了所有API及其所需的权限。你可以找到它here (Technical Q&A QA1937)

答案 1 :(得分:0)

我认为这对你有用的信息。

我可以在Google-Mobile-Ads-SDK文件中看到它引用了与这些权限相关联的库。此外,Google的AdMob和GoogleSignIn框架会自动安装firebase,即使应用程序从未使用此权限。我在info.plist中定义了NSCameraUsageDescription后,让我提交没有问题,希望应用程序不会提示用户,所以他们也不会看到文本。

许多广告SDK(例如AdMob)都将EventKit作为必需框架。 在此之前,您可以通过将NSCalendarsUsageDescription添加到info.plist来解决此问题。我还必须对NSBluetoothPeripheralUsageDescription

做同样的事情

编辑:同时添加NSPhotoLibraryUsageDescription也非常重要,请参阅:https://groups.google.com/forum/#!category-topic/google-admob-ads-sdk/ios/UmeVUDrcDaw