首页 文章列表 文章详情
什么是 XCFramework?怎么创建一个 XCFramework
2021-10-19
2918阅读
来源:applebyme

一个XCFramework是由Xcode中创建的一个可分发的二进制包,其中包含一个框架或库的变体,使得它可以在多个平台上使用(iOS装

置的MacOS,tvOS,和watchOS),包括模拟器生成。XCFramework 可以是静态的或动态的,并且可以包含标头。


要使用预构建的 XCFramework,请将目标链接到 XCFramework。Xcode 确保目标可以针对 XCFramework 的标头构建,链接其二进

制文件,并将其嵌入以进行分发。如果您的应用有多个使用相同 XCFramework 的目标(例如应用扩展),您应该选择一个目标(通常

是您应用的目标)来嵌入 XCFramework,其他目标应链接它而不嵌入。


您可以创建一个XCFramework,其中包含多个特定于平台的变体,供不同平台上的客户端使用,包括模拟器构建。XCFramework 还可

以包含为 AppKit 构建的框架的 macOS 变体和为 UIKit 构建的框架的另一个 macOS 变体。


1.在项目编辑器的 Build Setting 窗格中,将Build Libraries for Distribution构建设置设置为Yes并将跳过安装 (SKIP_INSTALL)构建设

置设置为No。


确保您有一个仅构建框架目标及其依赖项的方案。


2.通过xcodebuild为每个平台的通用运行目标输入一个命令,为您希望支持的每个平台创建框架或库的存档:


xcodebuild archive  [-project <project name>] -scheme <scheme name> -destination "generic/platform=

<platform name>[,arch=<architecture name>][,variant=<variant name>]" [-configuration <configuration name>]

 [-archivePath <archive output path>]


要构建为 UIKit 构建的框架的 macOS 变体,请Mac Catalyst作为变体参数传递。


3.从每个存档导出框架或库并包含任何标题。


4.通过在终端中输入xcodebuild带有-create-xcframework选项的命令,创建一个包含框架或库的每个变体的 XCFramework :


xcodebuild -create-xcframework -framework <path> [-framework <path>...] -output <path>

xcodebuild -create-xcframework -library <path> [-headers <path>] [-library <path> [-headers <path>]...] -output <path>


要查看所有命令选项,请在终端中输入xcodebuild -help或xcodebuild -create-xcframework -help。


上一篇:企业签名怎么在 iOS 上手动点击信任开发人员 下一篇:苹果app怎么通过 App Store 分发应用程序?
2015 © 一门App代上架(AppleByMe)-专业代上架苹果市场服务系统 版权所有 商务合作 蜀ICP备18037248号