Apple隐私清单

Apple 隐私清单是应用商店上每个 App 都需要的文件,其中详细说明了 App 收集的数据以及这些数据的使用方式。

什么是 Apple 隐私清单?

Apple要求其应用商店中的每一个App都有一个隐私清单。该文件必须添加到App的代码中,说明其收集的数据类型和收集原因。Xcode 会将这些文件总结为报告,然后扫描并上传到应用商店的 App 隐私信息部分。 

您可以在这里阅读Apple的官方文档

Apple隐私清单示例

隐私清单在 Apple 2023 年全开发者大会 (WWDC23) 上推出,是 Apple 隐私计划的一部分,旨在增强用户透明度和保护个人数据。它确保开发者明确披露其数据收集实践,特别是与嵌入App的第三方SDK相关的数据收集实践。 

在此要求之前,App 开发者者通常不知道他们的第三方 SDK 正在收集哪些数据或在哪里使用这些数据。 

Apple 为何推出隐私清单?

2022 年,Apple 宣布推出隐私营养标签,要求应用为普通用户提供 App 隐私实践的信息。

隐私清单是 Nutrition Labels 的下一个版本,为用户提供有关数据收集和使用方式的更多信息。由于所有应用(包括连接到您App的第三方应用和插件)都有自己的隐私清单,Apple允许您将其汇总为App的单一清单,从而简化了该流程。

隐私清单要求开发者者声明其数据使用情况和API 接口权限,以提高透明度并防止将设备API滥用于未经授权的目的(如指纹识别识别)。要求开发者声明其数据使用情况可防止API滥用,并最终促使SKAdNetwork成为广告主的主要归因工具。

Apple 隐私清单有哪些主要功能? 

从iOS 17开始,每个新增或更新的App都必须包含以下信息:

数据使用情况NSPrivacyTracking

这是一个键,用于指示App是否请求授权以追踪其他公司应用和网站上的用户。它基于 Apple 的 App 追踪透明度 (ATT) 框架,该框架规定应用程序在进行任何追踪之前必须获得用户同意。

外部网域:NSPrivacyTrackingDomains

App或第三方SDK使用的任何外部域名都必须在隐私清单中列出,以确保潜在追踪的透明度。不符合Apple最新隐私规则和ATT要求的域名可能会被Apple屏蔽,除非用户同意。

营养标签:NSPrivacyCollectedDataTypes

这些标签列出了您的App或第三方SDK收集的用户数据类型及其收集原因。开发者可以轻松使用Xcode生成隐私报告,其中提供App和任何链接的第三方SDK所收集数据的摘要。

每种 NSPrivacyCollectedDataType 都包括:

  • 收集的数据类型
  • 用于说明数据是否关联到用户
  • 用于说明数据是否跟踪用户
  • 收集数据的原因

以下是通过Apple官方文档收集的联系信息示例:

营养标签示例

API的必备条件:NSPrivacyAccessedAPITypes

即使用户同意追踪,也禁止指纹识别识别。这消除了指纹识别,无论是您自己的代码还是通过第三方 SDK。在本节中,您需要明确说明您的 App 或 iOS、iPadOS、tvOS、visionOS 或 watchOS 上的第三方 SDK 使用这些 API 的原因,并确保它们仅用于预期目的。

如何创建和实施Apple隐私清单

了解 Apple 隐私清单中的所有内容后,您可以按照步骤指南创建自己的隐私清单。

第4步:打开Xcode

第2步:选择文件 > 新文件。

第3步:向下滚动到“资源”并选择App Privacy File type。

第4步:点击Next。

第4步:在目标列表中检查您的App或第三方SDK的目标。

第6步:点击Create,

请注意,该文件会自动命名为PrivacyInfo.xcprivacy,这是捆绑隐私清单的必要文件名。生成隐私报告时,您还需要将隐私清单文件添加到目标 Xcode 的资源中。

文件创建完毕后,请在此属性列表文件层级的字典中添加以下键:

  • NSPrivacyTracking
  • NSPrivacyTrackingDomains
  • NSPrivacyCollectedDataTypes
  • NSPrivacyAccessedAPITypes

关键结论 

  • Apple 隐私清单是所有应用商店应用程序的必要文档,其中概述了收集的数据及其预期使用。
  • SKAdNetwork 的推出旨在提高透明度,并基于隐私营养标签(Privacy Nutrition Labels),有助于防止指纹识别识别,并推送 SKAdNetwork 进行归因。
  • 它包括追踪权限(NSPrivacyTracking)和外部域声明(NSPrivacyTrackingDomains)等关键组件。
  • 开发者人员必须列出收集的数据类型(NSPrivacyCollectedDataTypes)以及使用的API(NSPrivacyAccessedAPITypes),以确保合规Apple的规则。
  • 开发者人员可以轻松在 Xcode 中创建隐私清单,遵循满足 Apple 隐私标准的简单流程。
Background