跳过主要内容

iOS应用的隐私清单

了解苹果新隐私清单要求的iOS应用,包括遵守步骤和对开发者的影响,自2024年5月起生效。

马丁·多纳迪厄

马丁·多纳迪厄

内容创作者

iOS应用的隐私清单

从2024年5月1日起,苹果要求所有App Store上的iOS应用程序包含隐私清单文件。 这些文件,称为 PrivacyInfo.xcprivacyiOS 应用程序的隐私声明

  • 什么是隐私清单?
    一个结构化的文件,记录:

    • 应用程序和第三方 SDK 收集的用户数据。
    • 用于敏感数据或跟踪的 API。
    • 应用程序访问的域名。
  • 为什么它很重要?

    • 确保数据处理透明度。
    • 保持 App Store 隐私标签准确。
    • 避免应用程序审查延迟或拒绝。
  • 关键的合规步骤:

    1. 使用 Xcode 15或更高版本才能创建和配置 PrivacyInfo.xcprivacy 文件。
    2. 记录所有API、数据类型和跟踪域名。
    3. 从第三方SDK供应商处获取隐私清单。
    4. 使用Xcode的隐私报告进行验证。
  • 截止日期:

    • 2024年5月1日: 开始执行。
    • 必须包含隐私清单才能获得批准。

不符合要求的风险包括App Store拒绝、法律问题和用户信任丧失。自动扫描器和隐私生成器等工具可以简化流程。请保持积极主动,以确保您的应用符合苹果的隐私标准。

WWDC23:了解隐私清单 | Apple

Apple 的隐私宣言规则

Apple 的隐私宣言引入了一个要求对 iOS 应用程序中的所有组件透明地披露数据收集和 API 使用的要求。

为了遵守此项要求,开发者必须包含一个 隐私信息文件(PrivacyInfo.xcprivacy) 文件中必须包含三个关键元素:

  • 必需原因 API 声明: 清晰地说明特定 API 的使用原因。
  • 数据使用类别: 指定收集和使用的数据类型。
  • 域名使用文档: 详情说明应用程序访问的域名。 [3].

__CAPGO_KEEP_0__

__CAPGO_KEEP_1__

苹果已经设定了这些要求的坚定期限: __CAPGO_KEEP_2__
里程碑 2024年5月1日
__CAPGO_KEEP_3__ 强制执行开始

2024年5月后

持续监控继续

这些日期突出了开发者必须将应用程序与新规则对齐以避免中断的紧迫性。

  • __CAPGO_KEEP_4__:不符合规定的应用将无法获得发布许可。
  • 法律风险:未披露数据处理实践可能导致监管行动。
  • 声誉损害:用户可能会失去信任于未能满足透明度标准的应用。 [2].

“使用特定API的应用必须在隐私清单文件中声明其意图,有效日期为2024年5月1日。” – Apple [6]

对于使用远程更新(OTA)解决方案的开发者,如 Capgo,遵守规定尤为重要。这些更新机制,及其数据处理实践,必须在隐私清单中进行明确说明。

此外,每个SDK和框架,集成到您的应用中,都必须包含其自己的隐私清单,说明其数据收集和API使用情况。在App Store提交过程中,Xcode将编译这些单独的清单为统一的隐私报告。 [3].

所需工具和设置

要在iOS应用中实现隐私清单,您需要设置开发环境,配置必要的工具和凭证。这些步骤将帮助您准备创建符合规定的应用。 PrivacyInfo.xcprivacy 文件。

系统要求

确保您已安装并配置以下内容:

  • Xcode 15 或更高版本: 这是支持隐私清单的最低版本 [1].
    • 可在Mac App Store (稳定版本)中找到。
    • 从Apple Developer门户下载Beta版本[16]。
  • macOS: 使用稳定版本以确保与Xcode的兼容性。

开发者凭证

要与隐私清单一起工作并将您的应用提交到App Store,您需要以下凭证:

要求 目的 验证
苹果开发者账户 用于应用程序提交和证书管理 需要每年订阅。
开发证书 启用code签名和开发构建。 必须是有效且最新的。
分发证书 需要提交应用程序到App Store。 需要每12个月更新一次。
配置文件 用于设备测试和部署。 必须与应用程序的包标识符保持一致。

创建您的 PrivacyInfo.xcprivacy 文件,请打开Xcode并转到 新建 > 文件 > iOS > 资源 > 应用程序隐私 [1]. 将此文件放置在应用程序包资源的根目录中,以确保在构建过程中它将被识别。

从2024年春季开始,苹果将要求所有提交到App Store Connect的应用程序包含任何列出的API使用的批准原因 [7].

一旦您的工具和凭证准备就绪,您就可以直接在Xcode中创建隐私清单文件。

隐私清单文件

在Xcode中创建隐私清单文件可以使用正确的步骤和工具而变得简单。以下是如何设置和使用自动化来简化流程的说明。

Xcode 设置步骤

Xcode IDE界面

  1. 创建隐私清单文件

    打开Xcode,导航到 文件 > 新建 > 文件, 并选择“App隐私文件”在资源部分。确保您的应用目标在此过程中已选择 [8].

  2. 配置必需密钥

    将以下密钥添加到您的新创建 PrivacyInfo.xcprivacy 文件:

    密钥 描述 必填值
    NSPrivacyTracking 表示应用程序是否使用跟踪数据 布尔值 (true/false)
    NSPrivacyTrackingDomains 跟踪域名列表 Array of domains
    NSPrivacyCollectedDataTypes 收集的数据类型 Array of dictionaries
    NSPrivacyAccessedAPITypes API 访问细节 iOS 应用程序隐私声明清单
  3. 验证配置

    配置文件后,通过在 Xcode 中生成隐私报告来验证您的设置。要进行此操作,请执行以下步骤:

    • 创建一个存档,方法是前往 产品 > 构建.
    • 右键单击生成的存档。
    • 选择 生成隐私报告 [8].

使用自动化工具可以帮助减少重复任务并确保一致性。

自动化方法

Privado.ai 集成
简化了过程的Privado隐私清单生成器,于2024年6月推出,通过自动化code扫描和报告生成简化了此过程。该工具:

  • 扫描您的code和SDK依赖项。
  • 映射数据收集实践。
  • 自动填充隐私报告。
  • 将响应直接链接到您的源code的相应部分。 [10].

App隐私清单修复器
于2025年4月推出,该工具使用shell脚本:

  • 分析您的清单并自动解决遵守问题。
  • 无缝与您的现有构建流程集成。
  • 支持不同项目类型的自定义模板 [11].

为了获得一致的结果,请将这些工具包含在您的项目目录中。这确保了您的团队和CI/CD管道之间的清单生成流程顺畅。

当使用 通过无线更新 通过像 Capgo在提交PR到Capgo时,确保您的隐私清单反映了任何与更新功能相关的数据收集或API使用。保持透明度至关重要,以便满足App Store的要求,同时利用现代更新功能。

数据收集和API文档

在Xcode中创建您的清单文件后,下一步就是文档您的应用的API使用和数据收集实践。这不仅是为了满足苹果的合规要求,还有助于建立与用户的信任。

API使用文档

您的 PrivacyInfo.xcprivacy 文件必须列出访问敏感信息的所有API。当在隐私清单中文档API使用时,包括API类别和批准的使用原因。

以下是一些需要文档的内容:

API类别 常见用途 必需文档
文件时间戳 安装日期跟踪 声明目的 code (例如,C617.1)
用户默认值 设置持久化 包含原因 code (例如,CA92.1)
磁盘空间 更新验证 声明 NSPrivacyAccessedAPICategoryDiskSpace 使用原因

这种详细程度确保了您的清单文件与数据收集实践之间的平滑连接。

“您负责在您的应用程序中包含的所有code,遵循App Store Review Guidelines。包括任何数据收集和跟踪实践。” - Tony,Apple隐私工程师 [5]

在实施即时更新时,特别注意 磁盘空间API声明.例如,Firebase Analytics版本10.24.0在2024年4月解决了ITMS-91053错误,通过解决与 NSPrivacyAccessedAPICategoryDiskSpacecontext:Capgo营销网站。角色:短UI标签或导航项。见于:页面trust.astro。消息键`and`(And)。 [12].

NSPrivacyAccessedAPICategoryUserDefaults

数据类型和类别

  • 您的隐私清单必须清晰地列出所有收集的数据类型,并将它们分类。具体来说,您需要记录以下内容:
  • 数据是否与用户身份相关
  • 数据是否用于跟踪目的,如果两者都适用,请指定Apple预定义列表中的批准目的

For apps using third-party SDKs, ensure each SDK includes its own privacy manifest. For example, Persona SDK v2.18.0+ automatically declares the following data types:

  • 粗糙位置 (例如,IP 地址)
  • 设备 ID (设备级别识别)
  • 用户 ID (帐户级别识别)
  • 诊断数据 (例如,错误日志)
  • 产品交互 (例如,流事件)

为了保持合规,定期审计您的代码库,以识别需要在您的隐私清单中包含的 API [13]。这种主动的审查可以避免提交延迟并确保您的应用程序与苹果的隐私标准保持一致。

第三方SDK管理

第三方SDK必须符合苹果隐私清单标准,以遵守法规并维护用户信任。这些标准,早些时候讨论过,同样重要的第三方SDK。以下,您将找到有关管理OTA更新的Capacitor应用程序和确保SDK遵从性的详细信息。

Capacitor和OTA更新

使用Capacitor应用程序中的OTA更新时,准确配置隐私清单至关重要。使用实时更新解决方案的应用程序需要在隐私清单中声明特定的API使用:

API类别 必需声明 目的
上下文:Capgo营销网站。角色:短的UI标签或导航项。消息键`subprocessors_table_purpose`(子处理器表目的)。 磁盘空间 NSPrivacyAccessedAPICategoryDiskSpace
更新包存储空间 NS隐私访问API类UserDefaults 更新配置
网络访问 NS隐私访问API类网络信息 更新分发

Capgo 简化了此过程,通过将隐私清单遵从性整合到其OTA更新系统中。它自动声明所需的API和数据访问,确保您的应用程序始终保持遵从性,同时从实时更新中受益。

现在,让我们来探索验证SDK遵从性的关键步骤。

SDK遵从性检查

解决OTA更新声明后,确保所有集成的SDK都满足必要标准至关重要。有88%的组织使用数千个云应用 [16]强大的SDK遵从性检查是必不可少的。

  • 自动扫描
    使用工具如 Ostorlab.co 扫描您的iOS应用程序的IPA文件 [1]。 这个功能可以补充Xcode隐私报告提供的信息,提供对应用程序遵守性分析的全面了解。

  • 版本管理
    如果一个SDK缺少隐私清单,您需要手动在应用程序的 PrivacyInfo.xcprivacy 文件 [14]中声明其数据使用。这一步确保了透明度和遵守苹果指南的要求。

  • 安全实施
    未管理的SDK可能会导致严重后果。例如 Tilting Point Media 于2024年6月18日因CCPA和COPPA违规而面临500,000美元的和解金,因为SDK配置不当 [15]。为了避免类似的陷阱:

    • 加密敏感数据 在 SDK 处理之前
    • 应用最少权限访问原则来限制不必要的权限
    • 持续监控 SDK 在您的应用中的使用情况
    • 定期审查 SDK 政策,以确保它们仍然符合要求

测试和提交流程

在您提交应用之前,您需要测试您的隐私清单实现,遵循苹果的要求程序,有效日期 2024 年 5 月 1 日 [9].

Xcode 隐私报告

您设置了隐私清单之后,下一步是测试其准确性。使用 Xcode 15,打包您的项目并生成一个 隐私报告 [8]. 这个报告提供了您的应用声明的数据类型、SDK 实践、API 使用情况和跟踪域名的概览

“Xcode 15 可以聚合您的应用项目中的所有隐私清单,并产生一个隐私报告,概括了声明的数据使用情况…… 这有助于您审查、了解和描述您的应用及其依赖项的隐私实践。” - Tony,苹果隐私工程师 [5]

为了进一步验证,您可以使用 Xcode 15 中的兴趣点工具检测任何跟踪域名的连接 [5].

提交要求

在审查隐私报告后,请确保以下关键组件已准备好提交:

要求 描述 验证方法
隐私清单文件 .plist 记录数据收集的文件 确认 Xcode 中文件的存在
SDK 合规 必须包含清单的隐私影响 SDK 检查 SDK 文档
API 使用说明 必需原因API 的批准理由 将隐私报告与 App Store 数据匹配
SDK 签名 必须签名的隐私影响 SDK 验证 SDK 签名

重要步骤:

  • 将隐私清单链接到您的应用目标 [17].
  • 确认第三方 SDK 包含其隐私包 [17].
  • 准确记录和声明所有跟踪域名 [5].

“检查隐私清单是否与您对第三方 SDK 功能的理解相符。” - Tony,苹果隐私工程师 [5]

为了实践例子,请看 CodeWithChris 团队。在 2023 年 10 月,他们成功地实施了苹果的隐私要求,同时构建了他们的心情跟踪器应用。他们依赖于 Xcode 的隐私报告来确保他们的应用满足苹果的新标准之前提交 [18].

更新和维护

保持您的隐私清单最新与维护应用代码库一样重要。随着隐私政策的演进,定期更新确保遵守并简化审批流程。 隐私政策 随着隐私政策的演进,定期更新确保遵守并简化审批流程。

政策更新跟踪

保持与苹果隐私政策一致对于维持App Store的合规至关重要。自2024年5月1日起,开发者必须密切关注隐私法规和API规范的变化。

更新类型 监控方法 需要采取行动
苹果政策变化 开发者门户通知 检查清单合规
SDK 变更 发布说明审查 更新隐私包
API 要求 Xcode 发布说明 验证必需原因 API

例如 InMobi's SDK 版本 10.7.2 包含了详细的隐私清单,这是一个第三方文档的强大例子 [4].

“开发者负责在他们的应用程序中包含的所有 code” - Apple [4]

版本控制

除了监控政策更新之外,系统化的版本控制对于确保长期遵守苹果不断演进的要求至关重要。这一步骤建立在早期措施之上,帮助开发者保持一致性和责任感。

  • 自动验证
    自动检查可以提高部署成功率,实时识别符合性问题。它们还可以快速回滚,如果出现问题,可以减少停机时间。

  • SDK 集成跟踪
    详细记录SDK版本及其相关隐私清单。例如,Spotify的移动团队通过精确SDK跟踪和2024年8月的针对性修复,减少了应用程序崩溃的15%。 [20].

  • 变更管理
    详细记录每次变更:

    • 记录更新的原因
    • 注意受影响的API和数据类型
    • 维护审计记录以简化符合性审查

使用自动化构建和版本管理功能的版本控制工具可以使此过程更顺畅。例如 Appcircle's版本系统允许开发者管理构建号和通过环境变量或Xcode集成跟踪版本 [20].

简介和资源

遵守苹果隐私标准需要持续关注和合适的工具。管理隐私清单不是一次性任务 - 它需要准确性和定期更新。最近的发现表明许多开发者仍然未能达到合规 [1].

以下是帮助简化实施的必备工具和资源:

资源类型 目的 页面/区域: Capgo 营销网站。角色: 短 UI 标签或导航项。消息键 `subprocessors_table_purpose` (子处理器表目的)
访问方式 Xcode 隐私报告 验证隐私清单
Xcode 15+ 苹果开发者门户 保持政策更新的最新信息
WWDC 会议 获取技术指导 Apple Developer 应用
SDK 文档 确保第三方遵守 个人 SDK 门户

这些工具简化了维持遵守的过程,尤其是验证和文档。开发者还可以探索自动化解决方案来管理隐私清单。例如, Capgo 提供实时更新功能来 Capacitor 应用,快速更新并遵守 App Store 要求。

从 2024 年春季开始,Apple 将要求应用程序解决所有隐私清单和 Required Reason API 问题,才能在 App Store 提交或更新。 [5]为了保持领先,开发者应该:

  • 从第三方 SDK 提供商收集隐私清单。
  • 为 iOS 应用程序记录所有跟踪域名和 Required Reason API 使用情况。
  • 使用 Xcode 的隐私报告定期验证清单。
  • 对数据收集实践进行详细记录。

以下资源对于进一步指导至关重要:

  • Apple Developer 网站: 获取隐私要求和政策变化的更新 [19].
  • App Store Connect: 查看提交指南和要求 [19].
  • WWDC 视频: 观看有关隐私的技术会议 [21].

FAQs

: faq

如果 iOS 应用开发者未能在 2024 年 5 月 1 日前满足 Apple 的隐私清单要求,会发生什么?

未能在 2024 年 5 月 1 日前满足 Apple 的隐私清单要求,可能会对 iOS 应用开发者造成严重后果。您的应用可能会在 App Store 审核过程中被拒绝,失去某些功能,甚至被从商店中移除。 未能满足 Apple 的隐私清单要求,可能会对 iOS 应用开发者造成严重后果。您的应用可能会在 App Store 审核过程中被拒绝,失去某些功能,甚至被从商店中移除。 此外,未能满足隐私清单要求可能会导致未来的应用提交面临更严格的审查,潜在延迟审批时间。这些后果不仅会影响您的应用的可用性,还会损害用户信任并减少您的应用在市场中的存在感。遵守截止日期有助于确保您的应用保持合规并可供您的目标受众访问。

::: FAQ如何确保 iOS 应用中的第三方 SDK 满足 Apple 的隐私清单要求?

要满足 Apple 的隐私清单要求,开发者必须包含一个

Privacy Manifest

要求 Privacy Manifest requirements PrivacyInfo.xcprivacy file in their app or SDK. This file needs to clearly detail the types of data being collected and explain the purpose behind using specific APIs. Additionally, developers should confirm whether the third-party SDKs they rely on fall under Apple’s guidelines for requiring a privacy manifest and signature.

从 2024 年 5 月 1 日起,所有提交到 App Store 的应用程序都必须遵守这些规则。开发者应与他们的SDK供应商密切合作,以确保数据处理的准确报告,使其更容易与应用程序的隐私声明保持一致。按照这些步骤不仅可以避免 App Store 的拒绝,还可以通过促进数据处理的透明度来增强用户信任。 :::

::: faq

开发者如何创建和维护 iOS 应用程序的隐私声明,以遵守 Apple 的政策?

开发 iOS 应用程序的开发者可以通过遵守 Apple 的指南并使用可用的工具来创建和管理隐私声明。Apple 的官方文档提供了详细的说明,说明如何设置一个 PrivacyInfo.xcprivacy 文件,该文件指定应用程序收集的数据以及使用的第三方 SDK。要获得逐步指导,Apple 的 WWDC23 视频关于隐私声明是一个很好的资源,涵盖了如何使用 Xcode 15 或更高版本来识别隐私实践并生成隐私报告。

To streamline compliance, tools such as mobile app consent software can help manage SDKs and ensure proper user consent is obtained. These tools make it easier to stay aligned with Apple’s data-sharing policies while fostering transparency with users. For developers using Capacitor apps, platforms like Capgo offer real-time update capabilities while maintaining compliance with privacy requirements.

继续阅读:iOS 应用隐私宣言

如果您正在使用 iOS 应用隐私宣言 计划安全性和合规性时,连接它到 加密 加密的实施细节 合规 合规的实施细节 Capgo 安全扫描器 Capgo 安全扫描器的产品工作流程 Capgo 安全 为 Capgo 安全产品工作流程 Capgo 信任中心 为 Capgo 信任中心工作流程

实时更新为Capacitor应用

当web层bug处于活跃状态时,通过Capgo将修复推送,而不是等待几天的应用商店审批。用户在后台接收更新,而原生变化保持在正常审批路径中。

来自马丁的人性化支持

立即开始

最新博客

Capgo为您提供创建真正专业的移动应用所需的最佳见解。