文章分享至我的個人技術部落格:cainrun.github.io/15064011415…
今天想測試一些第三方的庫, 打算做個Demo
的, 但發現死活執行不了, 一直給我掛掉, 我就納悶了, 於是乎就有了這篇文章.
關於怎麼打包Framework
可以去看看之前的兩篇文章玩轉iOS開發:Aggregate指令碼版本《模擬器與真機靜態Framework合成教程》, 玩轉iOS開發:非指令碼版本《模擬器與真機靜態Framework合成教程》, 這裡就不多做解釋了.
轉載宣告:如需要轉載該文章, 請聯絡作者, 並且註明出處, 以及不能擅自修改本文.
Xcode 9拖入檔案的問題
這裡使用Masonry
作為示範, 新建一個工程, 拖入進去:
然後在Project->Build Settings->Other Linker Flags
新增-ObjC
然後執行.
發現掛掉了, 還報了一個-[UIView mas_makeConstraints:] unrecognized selector sent to instance
錯誤.
不應該啊, 我已經新增了-ObjC
, 應該是可以的, 找了半天, 終於找到問題了, Project->Build Phases->Compile Sources
居然沒有自動連結Masonry
的.m
檔案:
既然沒有連結, 那就手動新增吧:
新增完成了, 再執行, 哦了~~執行成功:
Xcode 9.0打包Framework的問題
用Xcode 9.0
建立一個新工程, 新增Masonry
的檔案進去:
修改最低支援的iOS
版本:
然後移動可檢視的.h
標頭檔案, 臥槽...居然沒有連結.h
檔案, 那就自己手動新增吧:
新增好之後, 就執行一下, 發現正常啦:
PS:不只是第三方庫, 有時候連你自己寫的檔案, 更換個資料夾都會連結不上, 所以移動檔案的時候, 記得檢視一下是否有連結上.
工程地址
專案地址: github.com/CainRun/iOS…