iOS 隐私清单和三方SDK签名适配

💡 原文中文,约2100字,阅读约需5分钟。
📝

内容提要

苹果推出了隐私清单和SDK签名两项新功能,开发者需在5月1日前适配。隐私清单是让三方SDK或APP罗列和描绘搜集的数据和运用的需求阐明原因的API,SDK签名是为了验证第三方SDK的完整性。适配后,开发者可以将第三方SDK的隐私清单合并并导出PDF报告,在App Store提交审阅时参考报告填写隐私标签。

🔎

延伸解读

适配截止日期与后果

根据苹果2024年2月29日的通知,自3月13日起,若App使用了需声明同意原因的API但未在隐私清单中提供原因,苹果会通过电子邮件告知。自5月1日起,必须为App代码中使用的所列API提供同意原因,才能将新App或更新上传至App Store Connect。这意味着未适配的开发者将无法提交更新,可能影响发版计划。

隐私清单与SDK签名的不同作用

隐私清单用于罗列和描述三方SDK或App收集的数据类型及使用需声明原因API的理由,帮助开发者了解SDK的隐私实践。SDK签名则用于验证第三方SDK的完整性,确保软件供应链安全。两者配合,既要求透明化数据收集,又防止SDK被篡改,共同构成苹果隐私合规的新要求。

适配后的操作与隐私标签

适配后,开发者可以在Xcode中合并第三方SDK的隐私清单,并导出PDF报告汇总。在向App Store提交审阅时,可参考该报告填写隐私标签。最终,隐私标签会在用户的App Store下载页展示,向用户说明App的数据收集情况。这要求开发者准确汇总各SDK的隐私信息,避免标签与实际行为不符。

SDK签名的验证机制

对于提供二进制版本的三方SDK,需要第三方提供包含签名的SDK。当在App中采用新版SDK时,Xcode会验证其是否由同一开发者签名。如果签名与上次不一致,Xcode会编译失败并弹出警告。签名分为Apple Developer Program签名和自签名,苹果鼓励所有SDK使用签名,尤其是作为二进制依赖项的SDK。

❓

Q&A

苹果的新隐私清单功能有什么作用?

隐私清单用于罗列和描绘三方SDK或APP搜集的数据和运用的需求阐明原因的API。

开发者如何创建隐私清单文件?

开发者需使用Xcode 15创建隐私清单文件,并填写相关信息。

SDK签名的目的是什么?

SDK签名用于验证第三方SDK的完整性,确保软件供应链的安全。

适配隐私清单和SDK签名的截止日期是什么时候?

开发者需在5月1日前适配隐私清单和SDK签名。

如何在Xcode中合并第三方SDK的隐私清单?

开发者可以在Xcode中合并第三方SDK的隐私清单并导出PDF报告。

未提供同意原因的App会有什么后果?

自5月1日起,未提供同意原因的App将无法上传至App Store Connect。

🏷️

标签

➡️

继续阅读