把 framework 工程作為子項(xiàng)目 (Subproject)
適合你有 framework 源碼,需要一起編譯的情況。
1. 在主項(xiàng)目中 添加子項(xiàng)目
- 打開主項(xiàng)目的 .xcodeproj。
- 將 framework 的 .xcodeproj 文件拖入主項(xiàng)目的 Project Navigator 中。
2. 配置主項(xiàng)目與子項(xiàng)目的依賴
- 選中主項(xiàng)目 Target → General → Frameworks, Libraries, and Embedded Content。
- 點(diǎn)擊 +,選擇你的 framework(在子項(xiàng)目里編譯生成的 .framework)。
3. 配置 Build Phases
- 在主項(xiàng)目 Target 的 Build Phases → Target Dependencies → 添加 framework 的 target。
- 確保 Link Binary With Libraries 中也有你的 framework。
這樣編譯主項(xiàng)目時(shí),Xcode 會(huì)自動(dòng)編譯子項(xiàng)目并生成 framework。
如果在運(yùn)行過程中出現(xiàn)以下錯(cuò)誤:
Undefined symbol: _OBJC_CLASS_$_XXXView
檢查一下framework項(xiàng)目的target -> Build Settings -> Excluded Architectures看看是不是移除了對(duì)應(yīng)的arm64架構(gòu),一般在模擬器中運(yùn)行會(huì)出現(xiàn)這個(gè)問題。在實(shí)際產(chǎn)出過程中,如果需要合并真機(jī)和模擬器的架構(gòu),需要在此處選擇Any iOS Simulator SDK,設(shè)置值為arm64

arm64