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 混编。
生成
-
建立 framework 名为
XCFrameworkSDK
,放到桌面 -
打开 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
- TARGETS->General->Frameworks, Libraries, and Embedded Content,左下加号,弹框内左下 Add Other...->Add Files,选择导入刚才生成的
.xcframework
。Embed & Sign - 直接测试是否能调用库里的 API
网友评论