由于缺少NSCalendarsUsageDescription,使用无效的二进制文件拒绝了iTunes Connect上传

问题描述:

我正在尝试使用XCode 8上传现有应用程序的更新.上传之后,我已收到此电子邮件:

I'm trying to upload an update for an existing App with XCode 8. After the upload I have received this email:

"此应用尝试不使用就访问对隐私敏感的数据 描述.应用程序的Info.plist必须包含一个 NSCalendarsUsageDescription关键字,其字符串值向 用户使用该应用程序如何使用此数据."

"This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSCalendarsUsageDescription key with a string value explaining to the user how the app uses this data."

我了解iOS 10的新隐私政策以及如何添加所需的说明.我的问题是:我没有在应用程序中使用日历.

I know about the new privacy policy for iOS 10 and also how to add the needed description. My problem is: I'm not using the Calendar in my app.

有没有办法找出苹果为什么认为我使用日历的原因?也许是Google的AdMobSDK使用的?

Is there a way to find out why Apple thinks I use the Calendar? Maybe it's used by the AdMobSDK from Google?

我已经向Google发送了一封电子邮件,抱怨这一点,希望它会在以后的AdMob SDK版本中得到解决.在此之前,您可以通过将NSCalendarsUsageDescription添加到info.plist来解决.我还必须对NSBluetoothPeripheralUsageDescription做同样的事情.

I've sent an email to Google complaining about this and hopefully it will get resolved in future versions of the AdMob SDK. Until then you can workaround by adding NSCalendarsUsageDescription to your info.plist. I also had to do the same with NSBluetoothPeripheralUsageDescription.

非常重要的一点是还要添加NSPhotoLibraryUsageDescription,请参见:

Very important to also add the NSPhotoLibraryUsageDescription one as well see: https://groups.google.com/forum/#!category-topic/google-admob-ads-sdk/ios/UmeVUDrcDaw

2016年9月18日更新:Google已发布7.11.0版,从而不再需要这些版本.

Update Sep 18, 2016: Google has released version 7.11.0 which removes the need to have any of these.