解决 ITMS-91053:缺少 API 声明警告

问题描述 投票:0回答:0

与我们许多人一样,最近,在提交 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,这让我产生了以下问题:

  1. 应用程序隐私清单是否应该声明(或重新声明)依赖项使用的 API?这似乎不合理,因为 SDK 有自己的清单...
  2. 由于第 3 方 SDK 的重新声明原因对我来说似乎不正确 - 我如何找出应用程序代码中的哪些 API 有问题?是否有任何可用工具可以在我的本地开发计算机上执行相同的验证?
ios app-store privacy
© www.soinside.com 2019 - 2024. All rights reserved.