与我们许多人一样,最近,在提交 TestFlight 构建后,我收到了一封电子邮件,其中指出:
ITMS-91053:缺少 API 声明 - 您的应用程序代码位于 “MyAppBinaryName”文件引用了一个或多个需要 原因,包括以下 API 类别: NSPrivacyAccessedAPICategorySystemBootTime。虽然没有采取任何行动 从 2024 年 5 月 1 日开始,当您上传新应用时,此时需要 或应用程序更新,您必须在中包含 NSPrivacyAccessedAPITypes 数组 您应用程序的隐私清单,以提供这些 API 的批准原因 由您的应用程序代码使用。有关此政策的更多详细信息,包括 有关所需原因 API 和批准使用原因的列表,请访问: https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api。
我的通知引用了以下类别:
* NSPrivacyAccessedAPICategoryUserDefaults
* NSPrivacyAccessedAPICategoryDiskSpace
* NSPrivacyAccessedAPICategorySystemBootTime
* NSPrivacyAccessedAPICategoryFileTimestamp
我已阅读有关该主题的 Apple 文档,并了解此处的方法是添加带有相应 API 声明的隐私清单文件。很清楚。我已经为“NSPrivacyAccessedAPICategoryUserDefaults”这样做了,苹果的信息中不再提及它。这很好,很清楚。
但是,我的代码并不直接使用https://developer.apple.com/documentation/bundleresources/privacy_manifest_files/describing_use_of_required_reason_api中提到的任何API,这让我产生了以下问题: