【发布时间】:2017-01-17 20:37:52
【问题描述】:
所以我今天收到这封邮件,说我的应用程序的最新版本由于缺少一些使用说明而被 iTunes Connect 拒绝。准确地说:
此应用尝试在没有使用说明的情况下访问隐私敏感数据。应用的 Info.plist 必须包含一个 NSContactsUsageDescription 键和一个字符串值,向用户解释应用如何使用这些数据。
此应用尝试在没有使用说明的情况下访问隐私敏感数据。应用的 Info.plist 必须包含一个 NSCalendarsUsageDescription 键和一个字符串值,向用户解释应用如何使用这些数据。
此应用尝试在没有使用说明的情况下访问隐私敏感数据。应用的 Info.plist 必须包含一个 NSPhotoLibraryUsageDescription 键和一个字符串值,向用户解释应用如何使用这些数据。
此应用尝试在没有使用说明的情况下访问隐私敏感数据。应用的 Info.plist 必须包含一个 NSBluetoothPeripheralUsageDescription 键和一个字符串值,向用户解释应用如何使用这些数据。
此应用尝试在没有使用说明的情况下访问隐私敏感数据。应用的 Info.plist 必须包含一个 NSMicrophoneUsageDescription 键和一个字符串值,向用户解释应用如何使用这些数据。
此应用尝试在没有使用说明的情况下访问隐私敏感数据。应用的 Info.plist 必须包含一个 NSMotionUsageDescription 键和一个字符串值,向用户解释应用如何使用这些数据。
一旦这些问题得到纠正,您就可以重新交付纠正后的二进制文件。
我发现这些已成为 iOS 10 的强制要求,但唯一的问题是我的应用程序没有请求访问其中任何一个的权限。我认为只有在您实际请求权限时才能强制说明?
是不是因为我的一个依赖项(Cocoapods)可能包含一些请求这些权限的代码?或者,即使我从未请求查看用户日历、联系人等,这些描述也是强制性的吗?
【问题讨论】:
-
根据我的经验 - 只有当您请求权限时,这些才是必需的。因此,也许某些依赖项正在为您执行此操作。此外,所有这些权限都闻起来很可疑,尤其是如果您的应用程序是一个简单的待办事项列表。也许某些依赖项正在进行网络钓鱼?
-
您能否发布您的
PodFile和您使用的库列表(如果您使用一些外部的 cocoapods)? -
它是github.com/nickoneill/PermissionScope .. 感谢您的帮助!
-
ُ他的解释和展示用法:iosdevcenters.blogspot.com/2016/09/…
-
我有完全相同的问题,我猜它是由以下原因引起的:pod 'ReactNativePermissions', :path => '../node_modules/react-native-permissions'
标签: ios app-store-connect ios10 xcode8