iOS XCFramework

2023-03-03  本文已影响0人  怀可

Framework 在真机上正常运行,模拟器报错

Could not find module 'SDK' for target 'arm64-apple-ios-simulator'; found: arm64-apple-ios, at: 

可以在使用 framework 时通过修改 Excluded Architectures 等设置达到模拟器正常运行,不在本文讨论范围。

作为 framework 的开发者,还有更好的解决方案:XCFramework,内部也支持 swift 和 Objective-C 混编。

生成

  1. 建立 framework 名为 XCFrameworkSDK ,放到桌面

  2. 打开 terminal

~/Desktop/XCFrameworkSDK
xcodebuild archive \
-scheme XCFrameworkSDK \
-destination "generic/platform=iOS" \
-archivePath ../output/XCFrameworkSDK \
SKIP_INSTALL=NO \
BUILD_LIBRARY_FOR_DISTRIBUTION=YES
xcodebuild archive \
-scheme XCFrameworkSDK \
-destination "generic/platform=iOS Simulator" \
-archivePath ../output/XCFrameworkSDK-Sim \
SKIP_INSTALL=NO \
BUILD_LIBRARY_FOR_DISTRIBUTION=YES
xcodebuild -create-xcframework \
-framework ../output/XCFrameworkSDK.xcarchive/Products/Library/Frameworks/XCFrameworkSDK.framework \
-framework ../output/XCFrameworkSDK-Sim.xcarchive/Products/Library/Frameworks/XCFrameworkSDK.framework \
-output ../output/XCFrameworkSDK.xcframework

桌面多出一个 output 文件夹,里面的 .xcframework 就是库文件了

使用

建立 iOS 项目名为 XCFrameworkDemo

  1. TARGETS->General->Frameworks, Libraries, and Embedded Content,左下加号,弹框内左下 Add Other...->Add Files,选择导入刚才生成的 .xcframework 。Embed & Sign
  2. 直接测试是否能调用库里的 API
上一篇 下一篇

猜你喜欢

热点阅读