在網上也參考了其它朋友的資料.今天試了一下cocoapods的使用.發覺這東西就是靠網絡而生存的.目前沒發現有什麼可以提高效率的地方.(吐槽下,公司網絡太次.)
主要參考網址:http://blog.csdn.net/totogo2010/article/details/8198694
那怎麼用呢?先安裝CocoaPods。
1、CocoaPods是跑在Ruby的軟體,安裝可能需要幾分鐘,安裝命名:
sudo gem install cocoapods
這裡可能網絡被牆,不能下載下傳.在終端中敲入這個指令之後,會發現半天沒有任何反應。
我們可以用淘寶的Ruby鏡像來通路cocoapods。按照下面的順序在終端中敲入依次敲入指令:
$ gem sources --remove https://rubygems.org/ //等有反應之後再敲入以下指令 $ gem sources -a http://ruby.taobao.org/
為了驗證你的Ruby鏡像是并且僅是taobao,可以用以下指令檢視:
$ gem sources -l
隻有在終端中出現下面文字才表明你上面的指令是成功的:
這時候,你再次在終端中運作:
$ sudo gem install cocoapods
(感謝方教授,讓我們多操作了幾步)
2、如果想為每個第三方庫生成文檔,那運作
brew install appledoc 這步是可選的。
安裝完成後提示:
如果你的Ruby環境不夠新的話,可能要更新一下:
gem update --system
先試試搜尋功能,你需要什麼庫,可以用pod來搜尋,比如要用JSONKit這個庫:
pod search是搜尋命名,後面寫上庫名稱就行了。
pod search JSONKit
搜尋時間會很長.出來結果後,進行下一步
初始化
好了, 在終端shell中cd 來到你要管理的項目,運作:pod install
(運作過程中,會提示找不到Podfile.自行在工程目錄下(含.xcodeproj的檔案夾内),建立一個Podfile的空白檔案.
我在終端輸入:
vim Podfile
打開空白檔案後,再輸入:
:wq
退出檔案後,再運作:
pod install
)
運作完之後你會發現你的項目目錄下是這樣的:
工程目錄裡多了*.xcworkspace pod等檔案。這是pod生成的項目管理檔案,打開LibDemo.xcworkspace 項目檔案,在Xcode裡看到是這樣的目錄結構:
添加一個庫:
vim Podfile 打開檔案,把剛才搜尋到的JSONkit添加進去。
platform :ios
pod 'JSONKit'
儲存退出。
運作:pod update
這樣是就把JSONKit 庫下載下傳并和本地項目關聯起來了,這是Xcode提示你更新項目
點Revert。
這時你看項目pod部分,多了JSONKit庫.好了,第三方庫就這麼神奇的加進來。
(我的并沒有自動提示,看着終端的資訊,等更新完畢後,我重新打開了XXXX.xcworkspace檔案)
頭檔案路徑
那試試看使用JONSKit.h,在ViewController.m裡引用下。找不到頭檔案,怎麼辦?還沒設定頭檔案的目錄,在項目的Target的裡設定一下:
如下圖所示,輸入${SRCROOT} 後面選上recursive。
完美。
(我并沒操作,頭檔案路徑.因為直接就可以引入頭檔案了)
其他的第三方庫。
Podfile檔案中添加後pod update下就ok。
platform :ios, '5.0'
pod 'JSONKit'
pod 'AFNetworking'
pod 'MBProgressHUD'
pod 'Reachability'
pod 'Nimbus/Core' Nimbus太大了,我隻需要 Core,也可以這麼寫。 啰裡啰嗦的把東西粘貼完了.還是那句話,這個工具對網絡依賴嚴重.如果網絡不好,還是老老實實的自己下載下傳,配置吧.
錯誤:
Generating Pods project
2015-09-26 13:38:12.200 ruby[45480:1877574] [MT] DVTAssertions: ASSERTION FAILURE in /Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-8227/IDEFoundation/Initialization/IDEInitialization.m:590
Details: Assertion failed: _initializationCompletedSuccessfully
Function: BOOL IDEIsInitializedForUserInteraction()
Thread: <NSThread: 0x7ff9551239f0>{number = 1, name = main}
Hints: None
Backtrace:
0 0x0000000104f0ca5c -[DVTAssertionHandler handleFailureInFunction:fileName:lineNumber:assertionSignature:messageFormat:arguments:] (in DVTFoundation)
1 0x0000000104f0c1e9 _DVTAssertionHandler (in DVTFoundation)
2 0x0000000104f0c455 _DVTAssertionFailureHandler (in DVTFoundation)
3 0x0000000104f0c3b7 _DVTAssertionFailureHandler (in DVTFoundation)
4 0x00000001064c5f5c IDEIsInitializedForUserInteraction (in IDEFoundation)
5 0x00000001090c5eb9 +[PBXProject projectWithFile:errorHandler:readOnly:] (in DevToolsCore)
6 0x00000001090c7a3e +[PBXProject projectWithFile:errorHandler:] (in DevToolsCore)
7 0x00007fff8dcb7f44 ffi_call_unix64 (in libffi.dylib)
Abort trap: 6
處理方法:
打開終端,依次執行以下方法:
sudo gem uninstall cocoapods
sudo gem install cocoapods
pod install
步驟是解除安裝, 安裝. 再安裝pods配置中的第三方.
轉載于:https://www.cnblogs.com/xclidongbo/p/4223675.html