iOS 隐私清单文件 Privacy

iOS 隐私清单文件 Privacy

码农世界 2024-06-08 后端 112 次浏览 0个评论

官网链接 Privacy manifest files | Apple Developer Documentation

隐私清单文件 

描述你的应用程序或第三方SDK所收集的数据,以及使用到的系统访问权限。

  • 收集数据的类型信息,您需要为您的应用程序或第三方SDK在所有平台上提供这些信息。
  • 系统访问权限信息,您需要为您的应用程序或第三方SDK在iOS、iPadOS、tvOS、visionOS和watchOS平台上提供这些信息。

    您需要在 PrivacyInfo 文件中,将上面的数据信息列出并说明情况。

    重要提示

    如果您的SDK在下列清单中,则需要在您的SDK中包含 PrivacyInfo 文件,以便开发者了解SDK在用户信息收集和系统权限方面的收集和访问情况。页尾SDK列表

    对第三方SDK的新要求

    第三方SDK可以为应用提供强大的功能;如果这些第三方SDK不向开发者和用户公开数据的收集和使用情况,将会隐形地以不同方式对用户隐私安全产生重大影响。在这里作为提醒,当你在应用中使用到第三方SDK时,你需要为使用所有这些SDK负责,需要了解这些SDK的用户数据收集和使用情况。在WWDC23大会上,我们针对SDK引入了新的隐私清单文件和签名机制,以帮助开发者和用户提高对第三方SDK如何使用数据的认识。对于所有的应用程序来说,这个功能是一个进步,我们鼓励所有的SDK采用它来更好地支持依赖它们的应用程序。

    隐私清单

    PrivacyInfo文件以标准格式列出了应用程序中第三方SDK中的用户数据使用情况。当你准备发布你的应用程序时,Xcode将把你应用程序使用的所有第三方SDK的PrivacyInfo文件合并成一个。生成一份综合的报告来了解应用中所有三方SDK的数据及权限使用情况,要比一条条地了解更快捷。

    SDK的签名

    现在有了对SDK的签名,当你在应用中采用第三方SDK的新版本时,Xcode将验证它的签名是否是同一个开发者,从而提高了软件供应链的完整性。

    如何创建隐私清单文件

    1. 打开Xcode,选择 File > New File.
    2. 下滑到 Resource 部分,选择 App Privacy.
    3. 点击 Next .
    4. 在 Targets 列表中,选择你的应用或SDK的Target.
    5. 点击 Create .

    文件默认名称为 PrivacyInfo.xcprivacy;

    注意 

    你需要将PrivacyInfo文件添加到Target的resources中,以便在Xcode生成隐私报告时使用它。如果你将你的SDK作为静态库发布,请使用Xcode 15或更高版本中来打包资源,包括PrivacyInfo文件。在Xcode中创建一个framework Target,将它的Mach-O构建类型设置为Static Library,并将PrivacyInfo文件与其他资源(例如图像文件)一起添加到Target的打包资源中。

    PrivacyInfo内容的填写

    在这个PrivacyInfo文件的顶层,将以下关键字添加到字典中:

    Privacy Tracking Enabled

    一个布尔值,用来标记你的应用或三方SDK中是否有通过App Tracking Transparency framework(ATT)框架使用数据进行追踪。了解更多

    iOS 隐私清单文件 Privacy

    如果没有追踪行为,值设置为NO;如果有进行追踪,值设置为YES,然后创建PrivacyTrackingDomains项;

    NSPrivacyTrackingDomains

    一个字符串数组,列出了你的应用程序或第三方SDK连接到的参与追踪的域名。如果用户没有授予App Tracking Transparency framework(ATT)框架的跟踪权限,对这些域名的网络请求将失败,你的应用程序将收到一个error。

    iOS 隐私清单文件 Privacy

    此项数据与Privacy Tracking Enabled的值相关联,如果项目里没有进行追踪,此项不填,Privacy Tracking Enabled为NO;如果项目里有进行追踪的域名,则需要将Privacy Tracking Enabled设置为YES。

    Privacy Accessed API Types

    一个字典数组,描述你的应用程序或SDK所用到的系统访问权限。

    数组中可以添加多个Item,每个item中包含PrivacyAccessedAPIType和Privacy Accessed API Reasons两个字段,根据实际情况添加Item和选择列表中对应类型和原因的值。不要自己填写!

    PrivacyAccessedAPIType(共五种类型)

    iOS 隐私清单文件 Privacy

    Privacy Accessed API Reasons(每种类型对应多种)

    iOS 隐私清单文件 Privacy

    如果你上传到app Store Connect的应用程序使用了系统权限,但没有在其PrivacyInfo文件中描述原因,苹果会向你发送一封电子邮件,提醒你将原因添加到应用程序的PrivacyInfo文件中。从2024年5月1日开始,App Store Connect不会接受在其PrivacyInfo文件中没有描述使用了required reason API的应用程序。了解更多

    Privacy Nutrition Label Types

    一个字典数组,描述你的应用程序或SDK所收集的用户信息类型、原因和使用情况。

    数组中可以添加多个Item,每个item中包含Collected Data Type、Linked to User(是否关联用户)、Used for Tracking(是否用于追踪)、Collection Purposes(收集目的,数组可添加多个目的),根据实际情况添加Item和选择列表中对应类型和原因的值。不要自己填写!

    提示:只需罗列自己应用的收集情况,不需要覆盖三方SDK中收集行为。了解更多

    创建隐私报告

    Xcode可以通过聚合你的应用及其链接的第三方SDK中的PrivacyInfo文件来创建隐私报告。通过隐私报告可以更好地了解您的应用程序收集的所有数据以及它是否对用户进行追踪。通过以下操作为您的应用程序创建隐私报告:

    1. 在Xcode中打开你的应用.
    2. 选择Product > Archive,Xcode创建归档并将其显示在Organizer中。.
    3. 点击 Organizer > 右击对应的 Archive > 选择 Generate Privacy Report.
    4. 选择文件保存位置.
    5. 在Finder中双击进行查看.

    隐私报告的配置方式与Privacy Nutrition Labels类似。当您在app Store Connect中提供您的应用程序的隐私详细信息时,请参阅此报告。了解更多配置信息

转载请注明来自码农世界,本文标题:《iOS 隐私清单文件 Privacy》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,112人围观)参与讨论

还没有评论,来说两句吧...

Top