标签: static-framework

iOS 是否失去了使用动态框架的大部分优势?

iOS 是否失去了使用动态框架的大部分优势?

这是否意味着如果我们使用动态框架dlOpen稍后加载它们,它会比静态框架更快?因为动态框架在开始时需要一些时间来链接,但它们在加载到内存中节省了更多时间。静态框架的加载时间大于动态框架的链接时间。真的吗?

所以看起来在 iOS 上使用动态框架没有任何好处,对吧?

在 macOS 和 Linux 上呢?动态框架有什么优势吗?如果是这样,它们是如何工作的?

frameworks launch-time ios dynamic-frameworks static-framework

6
推荐指数
1
解决办法
521
查看次数

具有静态框架子依赖项的 XCFramework

我有一个 XCFramework,它依赖于几个静态框架。

我的 XCFramework 是在启用 BUILD_FOR_LIBRARIES_FOR_DISTRIBUTION 的情况下构建的。

子框架不需要从 XCFramework 外部访问。

当我尝试在客户端(主机)应用程序中编译 XCFramework 时,我在 XCFramework 的 .swiftinterface 文件中收到错误消息No such module 'FBSDKLoginKit'(FBSDKLoginKit 是 XCFramework 子框架之一)

似乎缺少的是依赖模块的 swiftinterface 文件。例如,我正在使用 FBSDKLoginKit,但 XCFramework 中不存在 swiftinterface。

作为参考,我正在编译框架如下:

xcodebuild archive -project "TestFrameowrk.xcodeproj" -scheme "TestFrameowrk" -sdk iphoneos -archivePath ~/Desktop/xcframework.arm SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES

xcodebuild archive -project "TestFrameowrk.xcodeproj" -scheme "TestFrameowrk" -sdk iphonesimulator -archivePath ~/Desktop/xcframework.x86 SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES

xcodebuild -create-xcframework -framework ~/Desktop/xcframework.x86.xcarchive/Products/Library/Frameworks/TestFrameowrk.framework  -framework ~/Desktop/xcframework.arm.xcarchive/Products/Library/Frameworks/TestFrameowrk.framework -output ~/Desktop/Framework.xcframework
Run Code Online (Sandbox Code Playgroud)

xcode frameworks swift static-framework xcframework

6
推荐指数
1
解决办法
2275
查看次数