方法一:直接複製所有原始檔到專案中
這種方法就是把第三方類庫的所有原始檔複製到專案中,直接把所有.h和.m檔案拖到xcode專案中即可。如果第三方類庫引用了一些系統自帶類庫,那麼在專案中還需要額外引用那些類庫。
如果當前的專案啟用了arc,而引用的第三方類庫未使用arc,那還需要在專案資訊的targets–build parses裡找到第三方類庫的.m檔案,並為它們加上-fno-objc-arc標記。而對於在未啟用arc的專案用引用使用了arc的第三方類庫,則需要為第三方類庫的.m檔案加上
-fobjc-arc
標記。
另外,在源**中可以通過乙個編譯器指令__has_feature(objc_arc)來檢測專案是否使用了arc,具體見
方法二:引用.xcodeproj生成靜態鏈結庫並引用
首先,在xcode中把第三方類庫的.xcodeproj檔案拖到當前專案中;如果第三方類庫封裝了一些資源在.bundle檔案裡,那麼.bundle檔案需要和.xcodeproj一起拖到專案中。
然後,在專案的targets – summary – linked frameworks and libraries或者在targets – build phases – link binary with libraries新增第三方類庫生成的靜態鏈結庫引用。
接著,還需要在targets – build settings – search paths的user header search paths引數中加入第三方類庫的標頭檔案路徑,可以是絕對路徑如:/users/libpath,也可以是相對路徑(相對於當前專案資料夾)如:../**。
最後,有些靜態鏈結庫引用進來可能還需要增加一些標記,在targets – build settings – linking的other linker flags引數中增加:-objc,–all_load這一類標記。
通過以上幾步,一般都可以成功編譯。
當然還有一些例外的情況:
當前專案和第三方類庫同時使用了另外的一些第三方類庫,這個時候還需要額外做一些處理才能成功編譯:在引用的第三方類庫的.xcodeproj專案 – targets – build phases中的compile sources和copy headers把重複的.m和.h檔案移除掉。
第三方類庫引用的一些系統自帶類庫,如果專案中沒有引用,也可能會引起編譯錯誤,這時還需要在專案中引用第三方類庫引用的一些系統自帶類庫。比如:第三方類庫引用了quartzcore.framework,而專案中未引用quartzcore.framework則可能引起編譯錯誤,就需要在專案中也引用quartzcore.framework。
iOS 第三方庫
afnetworking 網路請求元件 fmdb 本地資料庫元件 sdwebimage 多個縮圖快取元件 uickeychainstore 存放使用者賬號密碼元件 reachability 監測網路狀態 datetools 友好化時間 mbprogresshud 一款提示框第三方庫 mwphotob...
iOS經常使用第三方庫
網路 網路請求首選afnetworking,本人一直使用的是 afnetworking,偶爾自己封裝乙個urlrequest 使用svpulltorefresh mjrefresh處理重新整理。資料解析 json 推薦使用yymodel,解析效率可以檢視下圖 iphone6上基於解析github使用...
IOS開發第三方庫
1.afnetworking 輕量級而又超級高效的ios網路程式設計框架,它支援ios5.0及以上版本。2.sstoolkit 非常簡單有用的工具,除了提供一些ui介面元素外,它還可以幫我們解決一些常見問題 3.gpuimage 4.socketrocket 5.hocketkit 可以使用它進行b...