我们是否需要为 CocoaPods 和 Carthage 创建 iOS 个通用框架?
Do we need to create iOS Universal Frameworks for CocoaPods and Carthage?
我的理解是否正确,只有当我们通过提供二进制文件来分发我们的库时才需要手动创建 Universal Frameworks/Libraries
(比方说直接下载 .framework
)?因此,如果我们使用 CocoaPods 或 Carthage 进行分发,这些工具将自己从我们的源代码创建 Universal Frameworks/Libraries
,对吧?
据我了解,CocoaPods 和 Carthage 允许通过仅分发二进制文件来隐藏源代码。
这是否意味着在这种情况下我们需要在使用这些服务之前自己创建Universal Frameworks/Libraries
?
2020 年创造 Universal Frameworks/Libraries
的最佳方式是什么,XCFramework
?
谢谢。
如果您使用 CocoaPods 或 Carthage 分发源代码,这些系统会在消费者的项目构建时将您的源代码编译成 .framework
或消费者端的静态库。消费者将可以访问您的源代码。
是。
如果您的框架打算用于 Mac Catalyst 应用程序 - 那么 XCFramework 是唯一的选择。否则,您仍然可以发布胖框架 - 旧的,但是黄金。
更新:
使用 AppleSilicon,XCFramework 成为您发布预构建框架的唯一格式,因为即使 iOS 模拟器现在也应该支持 x86_64
和 arm64
架构。
我的理解是否正确,只有当我们通过提供二进制文件来分发我们的库时才需要手动创建
Universal Frameworks/Libraries
(比方说直接下载.framework
)?因此,如果我们使用 CocoaPods 或 Carthage 进行分发,这些工具将自己从我们的源代码创建Universal Frameworks/Libraries
,对吧?据我了解,CocoaPods 和 Carthage 允许通过仅分发二进制文件来隐藏源代码。 这是否意味着在这种情况下我们需要在使用这些服务之前自己创建
Universal Frameworks/Libraries
?2020 年创造
Universal Frameworks/Libraries
的最佳方式是什么,XCFramework
?
谢谢。
如果您使用 CocoaPods 或 Carthage 分发源代码,这些系统会在消费者的项目构建时将您的源代码编译成
.framework
或消费者端的静态库。消费者将可以访问您的源代码。是。
如果您的框架打算用于 Mac Catalyst 应用程序 - 那么 XCFramework 是唯一的选择。否则,您仍然可以发布胖框架 - 旧的,但是黄金。
更新:
使用 AppleSilicon,XCFramework 成为您发布预构建框架的唯一格式,因为即使 iOS 模拟器现在也应该支持 x86_64
和 arm64
架构。