向 Apple App Store 提交隐私详情

Apple 希望帮助用户在下载应用前了解应用的隐私相关做法。为实现这一目标,App Store 中的每个应用产品页面都会在营养信息表中列出该应用收集的数据类型以及该数据是否关联到单个用户或对其进行跟踪。

当您的开发人员将应用提交至 App Store Connect 时,需要先回答 Apple 的应用隐私问题。例如,如果您在应用中整合了第三方合作伙伴 (如 Adjust) 的 SDK 代码,就需要描述这些伙伴的做法。

自 2024 年 5 月 1 日起,如果您的应用使用常用第三方 SDK,那么 Apple 将要求您提供下列额外详细信息,才会批准应用提交。

Adjust 不在 Apple 的第三方 SDK 列表中。不过,Adjust 的 SDK 会访问部分列表中的 API 并收集需要声明的数据点。Adjust SDK v4.38.0 及以上版本中包含列出的所有要求。本指南将帮助您从 Adjust SDK 的角度理解 Apple 的要求。

向 App Store Connect 提交应用时,您需要:

  1. 确保应用使用的所有第三方 SDK 均包含隐私清单文件,或更新应用的隐私清单,在其中包含第三方 SDK 数据使用的详细信息
  2. 声明您的应用收集了哪些敏感数据点 (据此应用营养信息标签)
  3. 如果您的应用使用某些 API,请说明访问这些 API 的原因
  4. 列出所有跟踪域名
  5. 确保您使用的所有第三方 SDK 都经过签名

什么是隐私清单?

iOS 17 引入了隐私清单这一机制,可向 App Store 告知应用的隐私要求。其中包含以下详细信息:

  • 数据是否用于跟踪目的。
  • 用于跟踪目的的域名。
  • 如使用敏感 API,则需要说明使用每个 API 的必要原因。
  • 应用使用的隐私标签列表。

隐私清单分为两个层级:应用层级和 SDK 层级 (第三方 SDK 的单独文件)。如果第三方 SDK 不包含隐私清单文件,那么应用开发者需要更新应用级别的隐私清单,以包含第三方 SDK 的详细信息。

Adjust SDK 包含一个隐私清单文件,其中包含上文列出的详细信息。Adjust SDK 的隐私清单将与您应用的隐私清单并列显示,以便完整呈现应用的隐私要求。开发者提交应用版本后,App Store 会读取合并后的清单。您还需要在 Apple 提交界面添加营养信息表。隐私清单生成的报告将帮助您更高效地完成此任务。

操作前须知

在开始之前您需要了解以下内容:

  • 您需要已集成 Adjust SDK v4.38.0 或更高版本。该版本包含必要的隐私清单文件。
  • 您有责任保证在 App Store Connect 中的回复准确且为最新信息。
  • 您需要指明所有可能的数据收集和使用方式,这不仅包括 Adjust SDK 收集和使用的数据,还包括您和其他第三方收集和使用的数据。仅在特定情况下收集和使用的数据(包括并未在此列出的情况)也有可能需要指明。
重要提示:

您的回答应始终符合 App Store 审核指南和任何适用法律。

1. Adjust SDK 收集的数据

Adjust SDK 向您发送的数据以及数据的使用方式均可进行配置。您可以根据需要在自己的应用中配置和集成 Adjust SDK,指定 Adjust 可以访问的应用数据。虽然 SDK 默认会收集部分数据,但您可以随时阻止或限制向 Adjust 发送这些数据,或发送属于 Apple 要求声明的类别的其他详细信息。

例如:Adjust SDK 默认不会收集 "联系信息" (Contact Info)。但如果您的应用收集 email addresses (邮箱地址) 并通过自定义参数将该数据发送给 Adjust,那么就意味着 Adjust 为您的应用收集 "联系信息"。

下列表格中列出了 Adjust 默认收集的数据。请务必比对您对 Adjust SDK 的具体配置以及您的数据收集方法。

请注意:

只有用户在ATT 弹窗中授权后,Adjust SDK 才能获取设备的 IDFA。对于设备的 IDFV,Adjust SDK 则无需 ATT 授权即可读取。更多信息,请阅读 Apple 的用户隐私和数据使用文档

数据类型Adjust 是否收集该数据?
联系信息 (Contact info)
  • 姓名 (Name)
  • 电邮地址 (Email Address)
  • 电话号码 (Phone Number)
  • 邮寄地址 (Physical Address)
  • 其他用户联系信息 (Other User Contact Info)
健康及健身 (Health and Fitness)
  • 健康 (Health)
  • 健身 (Fitness)
财务信息 (Financial Info)
  • 支付信息 (Payment Info)
  • 信用信息 (Credit Info)
  • 其他财务信息 (Other Financial Info)
位置信息 (Location Info)
  • 精确位置 (Precise Location)
  • 大略位置 (Coarse Location)
敏感信息 (Sensitive Info)
通讯录 (Contacts)
用户内容 (User Content)
  • 电子邮件或文本信息 (Emails or Text Messages)
  • 照片或视频 (Photos or Videos)
  • 音频数据 (Audio Data)
  • 游戏内容 (Gameplay Content)
  • 客户支持 (Customer Support)
  • 其他用户内容 (Other User Content)
浏览历史 (Browing History)
搜索记录 (Search History)
标识符 (Identifiers)
  • 用户 ID (User ID)
  • 设备 ID (Device ID)
是的,Adjust 会根据 Apple 的规定代表您收集设备 ID (例如 IDFA 和 IDFV),用于监测目的。
购买 (Purchases)
  • 购买历史 (Purchase History)
可选 - 在您进行配置后,Adjust 可以代表您收集此数据。
使用数据 (Usage Data)
  • 产品互动 (Production Interaction)
  • 广告数据 (Advertising Data)
  • 其他使用数据 (Other Usage Data)
  • Adjust 会出于分析目的代表您收集产品交互数据。
  • Adjust 不会收集广告数据。
  • Adjust 默认收集 会话事件 数据。其他用量数据为可选项,只有您在清单中进行配置后,Adjust 才会代表您收集相关数据。
诊断 (Diagnostics)
  • 崩溃数据 (Crash Data)
  • 性能数据 (Performance Data)
  • 其他诊断数据 (Other Diagnostics Data)
其他数据 (Other Data)
  • 其他数据类型 (Other Data Types)
是, Adjust 会代表您收集此数据。例如设备元数据,包括操作系统版本和 Adjust SDK 版本等。

1.1 Adjust 使用的数据

下表列出了 Adjust 使用数据的目的。

目的Adjust 使用情况
第三方营销 (Third-Party Advertising)可选 - 只有在您配置集成后,Adjust 才会与在应用中投放第三方广告的实体分享数据。

此值在 Adjust 的隐私清单中被设置为"Yes (是)",这是因为我们预计大部分客户会进行此设置。
开发者营销 (Developer's Advertising)可选 - 只有在您配置集成后,Adjust 才会与您或在应用中投放第一方广告的实体分享数据。
数据分析 (Analytics)
产品个性化 (Product Personalization)可选 - 只有在您选择导出相关数据的情况下,Adjust 才能与您分享用于产品个性化的数据。
应用功能(App Functionality)
其他目的

1.2 关联至用户的数据

Adjust 根据 Apple 的政策收集和存储设备标识符。Adjust 使用哈希处理的标识符来整理分析数据。Adjust 的某些功能 (如受众分群工具) 需要收集和存储未经哈希处理的 IDFA。

在 Apple 规则允许的情况下,Adjust 可以帮助您将其收集的数据与广告 ID 或其他设备标识符相关联。使用 Adjust 数据与任何唯一用户标识符 (如用户 ID 或账户 ID) 进行的任何关联均为您的个体行为,由您自行考量和斟酌。

2. 需要声明原因的 API

Apple 列出了一组 API,您在使用这些 API 时需要说明理由。使用这些 API 的应用和 SDK 应在隐私清单中的 “需要声明原因的 API” 部分解释其使用方式。这些 API 根据其功能和访问的数据进行分类,与 Apple 的指定主题保持一致。Adjust SDK 的以下 API 包含在 Adjust SDK 隐私清单中:

API原因详情
NSPrivacyAccessedAPICategoryFileTimestampC617.1 NSFileCreationDate NSFileModificationDate API 用于确定应用安装日期。
用户默认 API NSPrivacyAccessedAPICategoryUserDefaultsCA92.1SDK 会保留其正常运行所必需的数据,例如应用被打开的次数。

3. 跟踪域名

如果用户未通过 ATT 框架提供许可,Apple 将屏蔽所有已声明的跟踪域名。在发送请求之前,Adjust SDK 会检查用户是否已通过 ATT 框架授予许可。如果用户已授予许可,Adjust 就会将请求发送到跟踪域名。否则,SDK 会忽略需要用户许可的数据点并将请求发送到单独的域名。Adjust SDK 隐私清单文件中指定了 Adjust 使用的跟踪域名。

4. SDK 签名

Apple 的规则要求第三方 SDK 必须经过签名。SDK 签名是应用开发者用来确保第三方 SDK (例如 Adjust SDK) 真实性和完整性的方法,能够确认这些 SDK 是未经更改且经过官方验证的版本。

Adjust SDK 包含所需的签名。

5. 设置您的应用

如果您使用的是最新的 Adjust SDK,隐私清单会默认与 SDK 捆绑在一起。

您无法修改 Adjust 隐私清单。但是,如果您符合以下任一条件,则可能需要更改应用层级隐私清单:

  • 应用的数据收集范围超出 Adjust 基本功能,或您已将 Adjust SDK 配置为收集 Apple 政策中指定的任何数据点。
  • 您出于其他目的将敏感数据发送至其他跟踪域名。
  • 您正在应用中访问其他需要声明原因的 API。
重要提示:

即使您添加了额外的数据点和/或其他详细信息,也不要将 Adjust 跟踪域名添加到您的应用层级隐私清单文件。这些域名已在 SDK 层级隐私清单文件中列出。如果您正在使用任何其他跟踪域名,则应在应用级别的隐私清单中进行说明。

收到隐私清单报告后,请确保报告准确无误并在提交界面上应用正确的营养信息标签。