You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为Swift Package的二进制Target添加Privacy Manifest?

二进制Target添加隐私清单的解决方案

针对通过Swift Package Manager分发的二进制XCFramework添加隐私清单,目前有两种可行方案:

方案一:将隐私清单打包进XCFramework内部

构建XCFramework时,把PrivacyInfo.xcprivacy文件添加到各平台.framework的Resources目录下,再打包成XCFramework。这样SPM引入该二进制Target时,隐私清单会作为XCFramework的内置资源被自动识别。

具体操作可以在构建XCFramework的脚本中加入复制步骤,比如:

# 以iOS平台为例,复制隐私清单到framework的Resources目录
cp PrivacyInfo.xcprivacy ./build/Release-iphoneos/YourSDK.framework/Resources/

之后再执行xcodebuild -create-xcframework命令打包。

方案二:创建独立的资源Target并关联二进制Target

在Package.swift中新增一个普通Target专门管理隐私清单资源,然后让该资源Target与二进制Target一同作为产品的组成部分:

let package = Package(
    name: "YourSDK",
    products: [
        .library(
            name: "YourSDK",
            targets: ["YourSDK", "YourSDKPrivacyResources"]
        ),
    ],
    targets: [
        .binaryTarget(
            name: "YourSDK",
            path: "YourSDK.xcframework"
        ),
        .target(
            name: "YourSDKPrivacyResources",
            resources: [.process("PrivacyInfo.xcprivacy")]
        )
    ]
)

用户引入该SDK时,隐私清单会随资源Target被一并导入。

内容的提问来源于stack exchange,提问作者moshe k

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 12:50:15