跳过主要内容

iOS应用的隐私清单

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

iOS应用的隐私清单

从2024年5月1日开始,苹果要求所有App Store上的iOS应用都包含隐私清单文件。这些文件,称为 These files, known as PrivacyInfo.xcprivacy, outline how apps and their dependencies handle user data. Non-compliance can result in app rejection or removal. Here’s what you need to know:

  • What is a Privacy Manifest?
    A structured file that documents:

    • Data collected by your app and third-party SDKs.
    • APIs used for sensitive data or tracking.
    • Domains accessed by the app.
  • Why does it matter?

    • Ensures transparency in data practices.
    • Keeps App Store Privacy Labels accurate.
    • Avoids app review delays or rejections.
  • Key compliance steps:

    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].

遵守期限

苹果已经设定了明确的期限来满足这些要求:

日期 里程碑
2024年5月1日 强制执行开始
2024年5月后 持续监测继续

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

不符合要求的风险

不遵守这些指南可能会导致严重后果,包括:

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

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

对于使用远程更新(OTA)解决方案的开发者,如 Capgo,遵守合规要求尤为重要。这些更新机制,连同数据处理实践,都必须被明确记录。

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

所需工具和设置

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

系统要求

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

  • Xcode 15 或更高版本: 这是支持隐私清单的最低版本 [1].
    • 可在Mac App Store (稳定版本)中获取。
    • Beta版本可从Apple Developer门户[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 用于跟踪的域名列表 域名数组
    NSPrivacyCollectedDataTypes 收集的数据类型 数据类型数组
    NSPrivacyAccessedAPITypes API访问细节 iOS 应用程序隐私声明清单
  3. 验证配置

    配置文件后,通过在 Xcode 中生成隐私报告来验证您的设置:

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

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

自动化方法

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

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

App隐私宣言修复器
推出于2025年4月,这个工具使用shell脚本:

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

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

当使用 通过无线更新 通过以下平台 Capgo为了保持与App Store要求的兼容性,同时利用现代更新功能的好处,确保您的隐私清单反映了任何数据收集或API与更新功能相关的使用情况。保持透明度至关重要。

数据收集和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

数据类型和类别

  • 您的隐私清单必须清晰地列出所有收集的数据类型,并将它们分类。具体来说,您需要记录以下内容:
  • 数据是否与用户身份相关联。
  • 数据是否用于跟踪目的。

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
更新包存储空间 NSPrivacyAccessedAPICategoryUserDefaults 更新配置
网络访问 NSPrivacyAccessedAPICategoryNetworkInformation 更新分发

Capgo simplifies this process by integrating privacy manifest compliance into its OTA update system. It automatically declares the required APIs and data access, ensuring your app remains compliant while benefiting from real-time updates.

Now, let’s explore the key steps for verifying SDK compliance.

SDK Compliance Checks

解决OTA更新声明后,确保所有集成的SDK都符合必要标准至关重要。有88%的组织使用数千个云应用 [16], robust SDK compliance checks are a must.

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

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

  • 安全实施
    不恰当的SDK管理可能会导致严重后果。例如 Tilting Point Media 于2024年6月18日因未正确配置的SDK而面临500,000美元的罚款,违反了CCPA和COPPA [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的 SDK 版本 10.7.2 包含了詳細的隱私清單,作為第三方文檔的強大例子 [4].

“開發者對於 code 的所有內容負責” - Apple [4]

版本控制

除了監控政策更新之外,系統化的版本控制對於確保與 Apple 的需求持續遵守至關重要。這一步驟建立在早期措施之上,幫助開發者保持一致性和責任感。

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

  • 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 提供商收集隐私清单。
  • Document all tracking domains and Required Reason API usage.
  • 使用 Xcode 的隐私报告定期验证清单
  • 详细记录数据收集实践

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

  • 苹果开发者网站: 隐私要求和政策变化的更新 [19].
  • App Store Connect: 检查提交指南和要求 [19].
  • WWDC 视频: 关于隐私相关见解的技术会议 [21].

常见问题

:

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

如果未能在 2024 年 5 月 1 日前满足 Apple 的隐私清单要求,可能会造成严重后果 严重后果 iOS 应用开发者可能会面临 App Store 审核过程中的拒绝,某些功能会丢失,甚至可能被从商店中移除

此外,未能遵守隐私清单要求可能会导致未来的应用提交面临更严格的审查,潜在延长审批时间 这些后果不仅会影响应用的可用性,还会损害用户信任并减少应用在市场中的存在感提前完成截止日期有助于确保应用保持合规并可供您的目标受众访问

::: faq

开发者如何确保第三方 SDK 在 iOS 应用中满足 Apple 的隐私清单要求?

为了满足 Apple 的隐私清单要求,开发者必须包含 隐私清单 要求 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 应用程序的隐私声明清单,以遵守苹果的政策?

开发者可以通过遵守苹果的指南和利用可用的工具来创建和管理 iOS 应用程序的隐私声明清单。苹果的官方文档提供了详细的说明,如何设置一个 PrivacyInfo.xcprivacy 文件,该文件指定您的应用程序收集的数据以及使用的第三方 SDK。为了获得逐步指导,苹果的 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 应用程序隐私宣言

If you are using 使用 If you are using 隐私宣言 for the implementation detail in for the implementation detail in __CAPGO_KEEP_0__ 安全扫描器 for the product workflow in Capgo 安全扫描器 Capgo 安全 Capgo 安全 为 Capgo 安全流程中的产品工作流程 Capgo 信任中心 为 Capgo 信任中心中的产品工作流程

Live updates for Capacitor apps

当 Web 层 Bug 活跃时,通过 Capgo 将修复推送到应用程序,而不是等待 App Store 审批几天。用户在后台接收更新,而本机更改仍在正常审查路径中。

来自 Martin 的人性化支持

立即开始

最新博客文章

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