Apple 在 2025 年实施的更严格 App Store 政策要求开发者确保所有第三方库在隐私、安全和性能方面均符合高标准。违规可能导致 App 被拒、收入损失及品牌声誉受损。
核心要点:
- 隐私清单已成为强制要求:自 2024 年 5 月 1 日起,所有 App 必须包含详细的隐私清单
PrivacyInfo.xcprivacy) 以披露第三方 SDK 如何处理用户数据。 - 审计第三方库:使用如下工具 Xcode 15 来生成隐私报告,确保所有 SDK 都符合 Apple 的指南。
- 保持更新:定期查看 Apple 不断变化的政策,更新 SDK,并使用最新版本的 Xcode 和 Capacitor.
- 避免常见坑点:审核被拒通常是因为缺少隐私清单 (privacy manifests)、SDK 版本过旧或 API 使用不当。
快速技巧:
- 在 Xcode 中生成隐私报告,以识别合规性差距。
- 使用如下工具
npm audit以及yarn list进行依赖项分析。 - 考虑使用 live update 方案 例如 Capgo 实现快速合规修复,无需等待 App Store 审核。
合规不仅是为了避免被拒,更是为了建立信任、提升用户体验,并确保在 App Store 的长期成功。
如何添加 App 隐私详情标签 (Apple App Store Connect)

Apple 对第三方 SDK 的隐私要求
Apple 对其生态中的第三方库制定了严格的规则 Capacitor 应用 制定了严格的规则,以确保符合 App Store 审核的隐私与安全标准。作为开发者,根据 App Store Review Guidelines,你需要对应用中的每一段 code(包括第三方 SDK)负责。这一责任也延伸到了数据收集和追踪行为,因此理解并遵守 Apple 的隐私标准至关重要。
Apple 隐私工程团队的 Tony Tan 强调了这一点:
“根据 App Store Review Guidelines,您需要对应用中包含的所有 code 负责。这包括任何数据收集和追踪行为。应用隐私保护的很大一部分往往取决于第三方 SDK。我们听许多开发者反映,想要从应用依赖的优秀第三方 SDK 中获取所需的所有信息可能具有挑战性。隐私清单(Privacy manifests)为第三方 SDK 开发者提供了一种展示其隐私实践的新方式。这些信息能帮助您准确地描述应用的隐私情况。” —— Tony Tan,Apple 隐私工程团队 [6]
这进一步体现了 Apple 致力于确保第三方 code 符合其隐私与安全标准的决心。
第三方 SDK 指南
Apple 要求所有第三方库必须使用公开 API,并在最新的 iOS 版本上无缝运行。
指南 2.4.5 (第三方软件) 规定第三方 code 必须达到与你自己的代码相同的标准。在这些库中使用非公开 API,必然会被拒审 [10].
指南 5.1.5(数据收集与存储) 要求在处理用户数据时采取强有力的安全措施。这适用于每个第三方库,包括分析工具和崩溃报告 SDK [1].
此外,应用必须通过 AppTrackingTransparency (ATT) 框架 在追踪用户或访问其广告标识符之前,获得用户的明确同意 [4]。Apple 还禁止使用设备信号进行唯一识别的指纹识别技术,这一规定直接影响某些分析和反欺诈 SDK [4].
应用必须保持 自包含状态,这意味着应用不能在安装后下载或执行会引入新功能或特性的 code [1].
隐私清单要求
为了遵守这些指南,Apple 要求开发者提供详细的隐私清单,说明第三方的数据处理方式。自 2024 年 5 月 1 日起,提交到 App Store Connect 的 App 必须在隐私清单文件中完整说明对 required reason API 的使用情况 [5].
A 隐私清单 是一个名为 PrivacyInfo.xcprivacy的属性列表文件,必须随 XCFrameworks、 Swift packages 或 Xcode projects 分发的第三方 SDK 一起提供。 [7]这些 manifest 明确了每个 SDK 收集哪些数据以及如何使用这些数据。 [3].
Manifest 中需要包含的关键部分包括:
- NSPrivacyTracking: 指定 App 或 SDK 是否将数据用于追踪目的。
- NSPrivacyTrackingDomains: 列出涉及追踪的域名 [8].
- NSPrivacyCollectedDataTypes:详细列出收集的数据类型,例如设备标识符或用户内容 [7][8].
- NSPrivacyAccessedAPITypes:解释访问隐私敏感 API 的原因,包括 API 类别及获批的使用场景 [8]。严禁滥用特定 API 进行设备指纹识别 [7][8].
从 Xcode 15 开始,您的 App 及所有第三方 SDK 的隐私清单(privacy manifests)都会自动合并为一份统一的隐私报告 [7][3]。要生成此报告,请前往 产品 > 归档 > 生成隐私报告,从而全面了解 App 的数据收集情况 [7][8].
实现方式取决于 SDK 的分发方式。对于以静态库形式提供的 SDK,您需要在 Xcode 15 或更高版本中使用 static frameworks,以便正确 bundle 隐私清单文件 [7][8].
截至 2024 年 4 月,研究表明许多 App(尤其是银行和医疗行业)尚未完全实现隐私清单,这凸显了明显的合规差距 [9].
Apple 还引入了 SDK 签名 以及隐私清单 (privacy manifests)。这些签名可验证在采用新版本时,第三方 SDK 是否由同一开发者签名,从而增加一层安全防护,防止供应链攻击并确保应用依赖项的完整性。 [3].
如何审计第三方库 Capacitor 应用

在您的 Capacitor 应用中审计第三方库是确保符合 Apple 政策的关键步骤。通过利用 Xcode 等工具并进行彻底的依赖项分析,您可以有效地识别并解决潜在问题。
使用 Xcode 隐私报告

Xcode 的隐私报告功能提供了关于您的应用及其集成的 SDK 如何处理数据的详细概览。它将隐私清单整合到一份报告中,让您更轻松地查看收集了哪些数据以及这些数据是如何被使用的。
以下是在 Xcode 中生成隐私报告的方法(需要 Xcode 15 或更高版本):
- 在 Xcode 中打开你的项目。
- 选择 产品 > 归档 来创建归档;它将出现在 Organizer 中。
- 在 Organizer 中,右键点击该归档并选择 生成隐私报告.
- 保存报告并检查是否有任何缺失隐私清单的 SDK。
该报告对于识别缺乏适当隐私声明的第三方 SDK 至关重要。例如,在 2023 年 10 月,CodeWithChris 团队强调了 Apple 更新的政策,要求所有提交的应用都必须包含隐私清单。从 2024 年 5 月 1 日起,这将成为强制要求。缺失这些声明可能会导致 App Store 拒绝上架,因此在提交前检查 Xcode 隐私报告对于确保所有披露信息准确无误至关重要。
虽然 Xcode 的隐私报告是一个很好的起点,但使用其他工具和方法可以进一步强化你的审计流程。
依赖项分析工具
为了确保全面的合规性,请在利用 Xcode 隐私报告的同时,配合使用以下工具和技术:
- 使用以下工具进行依赖项审查:
package.json: 使用如下命令:npm ls或yarn list来识别项目中所有的直接依赖和间接依赖。 - 安全漏洞检查: 运行如下工具:
npm audit或yarn audit来扫描依赖项中已知的安全漏洞。请根据建议应用更新或补丁。 - Capacitor 特定安全实践: 重点关注数据安全、身份验证、网络安全和 Web View 配置等领域。例如:
- 避免在 code 中硬编码敏感信息(例如 API 密钥)。建议将其放在服务端进行管理。
- 使用安全的 Keychain 或 Keystore 方法在本地存储敏感数据。
- 内容安全策略 (CSP): 为您的 Capacitor Web View 配置强力的 CSP,以限制应用可加载的资源,降低遭受未经授权脚本攻击的风险。
- 向 SDK 开发者索取隐私清单 (Privacy Manifests): 如果某个 SDK 缺少隐私清单,请联系其开发者并要求提供。
- 查阅 Apple 文档: 通过查阅官方文档,验证您的应用是否符合 Apple 关于 数据使用 以及所需 API 的合规指南。
值得注意的是,许多 SDK 开发者可以为现有版本的库添加隐私清单。这意味着您并不总是需要更新到最新版本才能满足合规要求。不过,持续关注依赖项的更新和变更仍然是一个好习惯。
如何在 Capacitor 项目中实现合规
完成库审计后,下一步就是实施修复。这包括创建隐私清单、管理高风险 SDK 以及实现合规检查自动化。
创建与管理隐私清单
隐私清单(Privacy manifests)是至关重要的文件,用于概述您的 App 及其 SDK 如何处理用户数据。对于提交至 App Store 的 App,Apple 要求必须包含这些声明。
在 Capacitor 中配置隐私清单
要在项目中包含隐私清单,请确保您使用的是兼容的 Capacitor 版本,例如 Capacitor 8.0.0 或更高版本 [12].
名为 PrivacyInfo.xcprivacy的隐私清单文件可以嵌入到以 XCFrameworks、Swift packages 或 framework bundles 形式分发的 App 和第三方 SDK 中 [15]。该文件指定了 SDK 收集的数据类型、每种数据类型的用途、是否与用户关联以及是否用于追踪 [11].
如果 SDK 缺少隐私清单该怎么办
对于未提供隐私清单的 SDK,您需要根据 SDK 的 API 使用情况,手动向 App 的清单中添加必要的声明 [13]。例如, Situm SDK 要求您声明诸如精确位置(Precise Location)、设备 ID(Device ID)和性能数据(Performance Data)等数据类型 [14].
管理高风险 SDK
近期的安全泄露事件凸显了管理高风险 SDK 的重要性。采用“了解你的 SDK”方法有助于降低这些风险。这包括测试二进制文件并使用自定义脚本检测受限 API [16][17][18].
使用静态和动态分析工具来检查应用的二进制文件,并识别 SDK 如何收集和传输数据 [16]。如果发现受限 API,请考虑使用自研方案进行替换,以减少对第三方 code 的依赖并最大限度降低漏洞风险 [17].
持续监控至关重要
定期进行 SDK 审计对于保持合规至关重要 [17]。您有责任确保应用中的每个 SDK 都具有有效签名和合适的隐私清单 (Privacy Manifest)。否则,您的应用可能会被 App Store 拒绝 [17].
Capgo 提供了一种解决方案,通过实时更新和精简的合规工作流来简化这一过程。
Capgo 简化合规流程

Capgo 为应对合规挑战提供了实用的解决方案,尤其是在实时更新至关重要时。通过 Capgo,您可以即时推送合规修复,无需经过 App Store 审核。
在隐私清单推广期间,这一功能发挥了极大作用。开发者能够快速解决合规问题,无需等待 App Store 批准。
轻松部署
Capgo 的 live update 系统 让你能够实时部署修复方案,避免 App Store 审核带来的延迟。其无缝的 CI/CD 集成和全球分发系统可确保更新快速发布,让你的 App 始终符合新政策要求。 [19].
利用 Capgo 实现合规自动化
Capgo 的 CI/CD 集成让自动化合规检查和部署变得轻而易举。当自动化测试检测到合规问题或出现新的隐私要求时,你可以配置 pipeline,通过 Capgo 的 live update 系统来部署修复。这种方法能帮你应对不断变化的政策,同时确保流畅的用户体验。
提交前的合规检查清单
在准备将你的 Capacitor App 提交至 App Store 之前,完成详细的合规性审查至关重要。这一步能确保你的 App 符合 Apple 对第三方库的要求,避免因被拒审而导致的延迟。
验证隐私声明
仔细检查所有隐私声明是否完整且准确。App 中的每个第三方 SDK 都必须包含其自身的隐私清单 (privacy manifest),或者已包含在你的 App 级清单中。使用 Xcode 15 为 App Store Connect 生成一份汇总的隐私报告。
请务必确认每个 SDK 的隐私清单与其实际功能相符。例如, 调整 SDK 提供了一份概述其数据追踪用途及相关隐私标签的清单 [20]. 如果 SDK 未包含隐私清单,则需要更新应用层级的清单以反映其数据使用情况 [20]. 从 2024 年春季开始,Apple 将要求应用为所有影响用户隐私的 SDK 提供隐私清单 [11].
此外,请确保所有影响隐私的 SDK 都已由其开发者正确签名。此步骤可增强软件供应链安全并减少漏洞 [11]. 检查无误后,请在 Xcode 中测试这些设置以确认准确性。
在 Xcode 中进行测试
验证隐私声明后,请使用 Xcode 对应用进行全面测试。利用 Points of Interest 工具识别可能追踪用户的网络连接。该工具可帮助您确定是否应将某些域名列为隐私清单中的追踪域名。同时,确保隐私清单文件已正确添加到应用的 target resources 中,以便 Xcode 能够正确编译这些信息 [7].
通过在多台设备上运行应用来扩展您的测试范围: TestFlight. 在将应用提交至 App Store 审核之前,此 Beta 测试阶段对于发现潜在问题至关重要 [22].
常见错误及修复方法
测试完成后,请解决以下常见的合规问题,以确保提交过程顺利:
- 隐私声明不完整: 如果在 App Store 审核期间弹出警告,请重新检查应用的 code,以确认包含所有必需条目 [21]。请查阅每个第三方库的文档,了解其数据收集和处理方式。
- 隐私清单 (Privacy Manifest) 缺失或错误: 验证每个隐私清单是否准确反映了 SDK 的功能。如有必要,请对照 SDK 的官方文档进行核对 [11].
- 未签名的第三方 SDK: Xcode 会标记那些未由开发者正确签名的 SDK [3]。如果遇到这种情况,请联系供应商获取更新版本,或考虑更换为符合 Apple 签名标准的替代 SDK。
- 元数据不准确: 确保应用的描述和关键词准确反映其功能,尤其是在数据收集和第三方集成方面。元数据不匹配可能导致审核被拒 [22].
- 性能问题: 使用 Xcode 的调试工具来识别并修复内存泄漏或优化性能。密切关注第三方库对启动时间和响应速度的影响 [22].
如果提交后出现合规性问题,Capgo 的 live update 系统可以成为你的救星。Capgo 允许你实时部署修复方案,无需等待 App Store 审核,在保持无缝用户体验的同时,助你紧跟不断变化的政策要求。
持续保持合规性
Apple 的政策在不断演进,对于 Capacitor 开发者而言,紧跟政策变化是一项持续的挑战。规则变动频繁——新要求不断出现,现有指南也会更新。为了保持合规,你需要主动监控这些变化,利用自动化手段,并确保你的部署流程能够快速适配。
监控政策变化
Apple 会频繁更新其 App Store Review Guidelines,且 Apple App Store 和 Google Play 中有 85% 的移动应用存在安全与隐私问题 [24]。这凸显了紧跟政策变化的重要性,以避免陷入这一行列。
一种策略是建立月度审查周期,并维护一份合规日历来跟踪重要的更新和截止日期。订阅 Apple Developer 警报并关注行业渠道,可以帮助你捕捉到细微的指南变化。开发者经常会错过 Apple 在重大 iOS 版本发布之间引入的重要更新。
除了 Apple 的官方资源外,开发者社区和行业刊物也能提供有关政策变动的早期洞察。这些讨论通常在政策广泛普及前几周就会出现,为您争取到额外的准备时间。
同时,记录所有影响应用第三方库的政策变更也是明智之举。使用简单的表格即可追踪变更日期、受影响的库、所需操作及截止日期。这不仅有助于合规审计,还能让您更清晰地掌握 Apple 政策的长期趋势。
为了更高效地管理这些更新,自动化是关键。
实现合规检查自动化
随着应用的增长和第三方库的增加,手动合规检查将变得不再可行。早期安全扫描至关重要,因为 70% 的安全漏洞源于存在漏洞的 code [25]。自动化可以帮助您及早发现并解决这些问题。
以下是将自动化集成到工作流中的方法:
- 静态应用安全测试 (SAST):这些工具会在每次 commit 时自动扫描您的 code,在开发过程早期识别漏洞。
- 自动化依赖分析:将其集成到您的 CI/CD 流水线中。由于 82% 的应用使用了开源组件 - 其中许多存在已知的安全漏洞 [25] - 类似工具
npm audit可以在它们进入生产环境前标记出过时的库和漏洞。 - 以 Code 为准的政策:这种方法把合规要求当作软件来管理,从而支持版本控制、测试和自动强制执行。使用 Policy as Code 的组织报告称,其合规验证速度 比传统方法快 30% [25].
- 实时扫描: 在整个开发过程中持续监控代码库,可以防止不合规的 code 进入主分支。 65% 的企业发现,将合规性检查直接集成到开发生命周期中可以减少安全事件的发生 [25].
Capgo 实时更新
自动化只是解决方案的一部分。当应用上线后出现合规问题时,传统的更新周期可能会让你面临数周的安全风险。这时 Capgo 就派上用场了,它通过 Live Update 能够立即修复合规性问题。
Capgo 使用 端到端加密 以确保这些更新符合 Apple 严苛的安全标准。与其他平台使用的基础签名方法不同,Capgo 的加密方式完全符合 Apple 对第三方集成日益严格的要求。
该平台还包含 回滚功能,如果合规性更新导致意外问题,该功能将非常有用。例如,如果隐私清单 (privacy manifest) 更新或库替换引入了问题,你可以立即回滚到之前的版本,同时着手寻找更彻底的解决方案。
“如今获得快速反馈非常重要。我们应该在早期阶段加入安全测试并获取安全报告,以便了解 code 是否存在可能导致高危漏洞的内容。这正是 DevOps 的核心意义所在。”
- Panos Megremis,Camelot Lottery Solutions 首席测试软件工程师 [24]
Capgo 与 CI/CD pipeline 无缝集成,允许将合规性更新作为开发工作流的一部分进行自动化处理。当自动化扫描检测到漏洞或违反政策时,Capgo 可以直接向受影响的用户部署修复程序。这减少了手动工作量,并确保能够快速应对新出现的威胁。
使用 95% 的更新在 24 小时内交付,Capgo 确保合规性修复能快速触达用户。当 Apple 发布具有紧迫截止日期的政策变更时,这种速度显得尤为关键,尤其是对于安全相关的更新。
结论: App Store 合规化成功之道

应对 Apple 的合规要求并不一定令人畏惧。通过正确的策略,合规性可以从一种障碍转变为一种优势,让您的应用脱颖而出。
核心要点
满足 Apple 的合规标准对于释放应用的全部潜力至关重要。Apple 处理 50% 的应用审核在 24 小时内完成,90% 在 48 小时内完成 [26],做好准备能确保您的应用更快触达用户。
合规之路始于深入理解 Apple 的隐私清单 (privacy manifest) 要求以及第三方 SDK 指南。定期使用 Xcode 报告和依赖分析等工具审计应用,有助于在导致拒绝审核前识别并解决潜在问题。通过主动管理隐私清单和高风险 SDK,您可以确保应用始终符合 Apple 不断变化的规则。
持续审计和自动化是保持合规的关键。将合规检查嵌入您的 CI/CD pipeline,可以帮助您及早发现漏洞并无缝适应政策更新。保持对 Apple 指南的关注、维护清晰的隐私政策、优先考虑数据保护以及进行可用性测试,都是必不可少的步骤。 [2]通过定期审计和建立内部标准库来构建合规框架,可以确保您的应用在长期运营中始终做好准备。
除了技术层面的考量,合规还能建立信任。展示可靠性和用户安全性可以带来更好的评价、更多的下载量,并降低应用被下架的风险。 [2]这些策略对于在 App Store 取得成功并培养用户的长期信心至关重要。
live update 解决方案可以进一步简化合规工作,帮助您在挑战出现时抢占先机。
Capgo 如何提供帮助
借助针对您工作流定制的 live update 解决方案,实施这些最佳实践会更轻松。Capgo 将合规变成主动流程,简化了合规工作,已有数千款 App 在生产环境中依赖它。
Capgo 平台具备端到端加密,确保 Live Updates 符合 Apple 严格的安全标准。凭借无缝的 CI/CD 集成和即时回滚能力,您的 App 始终合规且安全。
对于 Capacitor 开发者,Capgo 可自动执行扫描并支持快速更新,让您能立即处理违规问题,避开 App Store 的审核延迟。该平台能够 在 24 小时内完成 95% 的更新 确保您始终领先于政策变化,而不是手忙脚乱地调整。
随着 Apple 政策持续演进,在合规驱动的 App Store 环境中,拥有像 Capgo 这样可靠的 live update 解决方案,对于保持 App 竞争力并赢得用户信任至关重要。
常见问题
::: faq
开发者如何确保其 Capacitor App 中的第三方库符合 Apple App Store 的要求?
要确保您 Capacitor App 中的第三方库符合 Apple App Store 政策,请按以下步骤操作:
-
添加隐私清单 (Privacy Manifest): 请为您使用的每个第三方 SDK 添加一份详细的 Privacy Manifest。该文档应清楚说明收集了哪些数据以及原因。这是提交 App Store 的强制要求,有助于确保对 Apple 和用户保持透明。
-
在 App Store Connect 中说明数据使用情况: 明确概述您的应用及其第三方库如何管理用户数据。如果数据用于追踪,请在提交时注明,并确保通过 iOS 14.5 引入的 AppTrackingTransparency framework 获取用户同意。
通过遵循这些步骤,您将符合 Apple 的政策并赢得用户的信任。像 Capgo 这样的工具可以简化这一过程,通过允许对您的 Capacitor 应用进行实时更新,而无需经过 App Store 重新审核,从而在避免繁琐操作的同时,确保您的应用合规且保持最新状态。 :::
::: 常见问题
Capgo 的 live update 系统如何帮助确保符合 Apple App Store 的政策?
Capgo 的 live update 系统为开发者提供了一种保持与 Apple App Store 政策一致的方法,通过实现 即时更新。这意味着可以在无需等待 App Store 审核的情况下修复 bug、加强安全性并提升性能。这是一种确保应用能够灵活适应 Apple 不断变化的指南的高效方式,尤其是在涉及 隐私规则 以及 用户数据保护.
借助 Capgo,开发者可以在避免不必要延迟的同时,确保应用平稳运行并符合监管要求。端到端加密和实时更新等功能可确保更新符合 Apple 和 Android 标准,是长期维持合规性的可靠选择。 :::
::: 常见问题
如果我的应用在 2024 年 5 月 1 日前未包含所需的隐私清单(Privacy Manifests),会发生什么?
如果您的应用未能在 2024 年 5 月 1 日 截止日期前提交必要的隐私清单,将被 App Store Connect 拒绝。这意味着您将无法发布新应用或向 App Store 推送更新。
此外,任何未在隐私清单中明确说明其对所需 API 使用情况的应用也将被拒绝。该政策是 Apple 旨在提高数据使用透明度并遏制未经授权的数据收集计划的一部分。 :::
继续阅读 第三方库:符合 Apple 政策
如果你正在使用 第三方库:符合 Apple 政策 来规划安全与合规,请结合 加密 了解 Encryption 的实现细节, 合规性 了解合规部分的实现细节, Capgo 安全扫描器 了解 Capgo Security Scanner 的产品工作流, Capgo 安全 用于 Capgo 安全的产品工作流,以及 Capgo 信任中心 用于 Capgo 信任中心的产品工作流。