描述
今天在用Xcode 8提交app到 iTunes上时,在打包提交成功后,收到了iTunes connect的推送提示,Invalid Binary,然后找到apple发来的e-mail。如下:
This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data.
This app attempts to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.
Though you are not required to fix the following issues, we wanted to make you aware of them:
Missing Push Notification Entitlement - Your app includes an API for Apple's Push Notification service, but the aps-environment entitlement is missing from the app's signature. To resolve this, make sure your App ID is enabled for push notification in the Provisioning Portal. Then, sign your app with a distribution provisioning profile that includes the aps-environment entitlement. This will create the correct signature, and you can resubmit your app. See "Provisioning and Development" in the Local and Push Notification Programming Guide for more information. If your app does not use the Apple Push Notification service, no action is required. You may remove the API from future submissions to stop this warning. If you use a third-party framework, you may need to contact the developer for information on removing the API.
原来是没有做iOS 10的适配,按照要求一一适配。
总结:
这个错误如果你没有收到iTunes connect的推送(我手机安装了iTunes connect),或者开发者账号的邮箱不在你手里,你可能就会不发现这个问题,因为它的提示是在提交IPA包到iTunes之后的几分钟内,如果是无效的,那么你的iTunes的构建版本将永远出不来。我在简书上也找到了一篇适配iOS10的文章,里面有很多硬件访问的描述需求
建议:
开发者安装一下,手机版iTunes connect,方便收到所有提交过程的状态。还有就是建议开发者拥有注册开发者账号的邮箱,方便对于账号的管理,和及时获取apple的邮件提示。(我就没有这个邮箱-_-)