原文:http://blog.csdn.net/top_roboo/article/details/51272415
cocoapods應該是時下類庫比較全面的三方管理工具,使用也特别友善,你隻需将别人的類庫在你的 podfile中
pod "SomeoneNameLibrary"
就可以在你的工程中使用這個庫,作為一個開發者,你是否也想讓别人在他的項目中
pod "YourNameLibrary"
,so,if your answer is yes,continue.
使用 cocoapods
官方提供的模闆建立工程
cocoapods
- 打開終端,進入你要寫代碼的目錄,輸入一下指令
- 這時候你的終端會出現幾個問題
What language do you want to use?? [ Swift / ObjC ] >Swift // 根據你自己使用的語言來輸入,注意大小寫 Would you like to include a demo application with your library? [ Yes / No ] >Yes // 你是不是要添加一個demo在你的工程裡面,也根據你自己來選,帶上會比較好 Which testing frameworks will you use? [ Quick / None ] >None // 個人認為這個測試架構沒用,選None Would you like to do view based testing? [ Yes / No ] >No // 依然 No
- 到此,你已經向成功邁出了一大步,終端會自動執行
指令,接下來你或許你要等很久,因為 cocoapods 執行pod install
的時候,會自動檢測pod install
是否有更新,你懂得。是以如果你沒有這個耐心的話,果斷repo
control+Z
- 進入你的目錄,發現你的工程結構如下
如果之前執行YourNameLibrary _Pods.xcodeproj Example Podfile Pods YourNameLibrary YourNameLibrary.xcodeproj Tests LICENSE YourNameLibrary Assets Classes YourNameLibrary.podspec README.md
的時候你按下了pod install
,現在我們要補救一下,終端進入control+Z
目錄下Example
執行完成之後,在Example下會有一個cd YourNameLibrary/ cd Example/ pod install --no-repo-update // 這句指令的意思是跳過更新repo 執行 install
打開它,你會看到這樣的畫面YourNameLibrary.xcworkspace
删除制作 cocoapods 類庫
檔案,把你給别人用的類庫檔案寫在這個目錄下面,示例代碼寫在ReplaceMe.swift
中,接下來的事情交給你了,編譯完成之後,繼續continueViewController.swift
上傳你的類庫到 Github
看到這個标題,千萬不要沖動,因為pod是根據Github提供的tag去比對的,是以如果你不會設定tag值,還是一步一步跟着來 - 首先在你的Github首頁上建立好倉庫,并且和你的本地倉庫關聯,你可以借鑒一下的送出
git add. git commit -m "Initial commit" git tag git push origin
驗證你的 podspec
檔案
podspec
在我們的工程根目錄下有這樣一個檔案
YourNameLibrary.podspec
,這是你的類庫許可檔案,你的類庫就是依據這個檔案被别人從 Github 上導入到工程裡面的,這裡隻做簡單的介紹,如果想進一步了解,請到這裡去看
- 編寫
podspec
Pod::Spec.new do |s| s.name = "YourNameLibrary" #你的類庫的名字, s.version = "0.1.0" #版本号 s.summary = "你的類庫的簡介" #簡介 s.description = "你的類庫的具體描述" #這裡要注意一點,描述和簡介不能一樣,而且描述要比簡介長才可以通過驗證 s.homepage = "https://github.com/<GITHUB_USERNAME>/YourNameLibrary" #你的github首頁 # s.screenshots = "www.example.com/screenshots_1", "www.example.com/screenshots_2" #這裡是截屏檔案位址 s.license = 'MIT' #許可協定類型,一般就用MIT s.author = { "作者的名字" => "作者的郵箱" } s.source = { :git => "https://github.com/<GITHUB_USERNAME>/YourNameLibrary.git", :tag => s.version.to_s } # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>' s.ios.deployment_target = '8.0' #你的類庫支援的 iOS版本 s.source_files = 'YourNameLibrary/Classes/**/*' s.resource_bundles = { 'YourNameLibrary' => ['YourNameLibrary/Assets/*.png'] } # s.public_header_files = 'Pod/Classes/**/*.h' # s.frameworks = 'UIKit', 'MapKit' #這是你的類庫依賴的架構,一般的項目裡都會導入UIKit等常用架構,是以這裡不用導入 # s.dependency 'AFNetworking', '~> 2.3' #這是你的類庫依賴的三方庫,如果需要,請寫在這裡 end
- 驗證
檔案,終端進入到你的podspec
目錄下,執行這一條指令podspec
如果驗證通過了會出現這個,你就可以繼續下一步,如果沒通過,你要排查錯誤,知道通過為止pod lib lint YourNameLibrary.podspec
關聯cocoapods到你的類庫
如果你已經走到這裡,告訴我你有一點小激動,此時我要是多說些廢話,或者沒有下文。。。
好的我們continue
- 如果你沒有注冊過cocoapods,請自覺先去注冊,注冊完成之後,執行下面這條指令
- 如果出現終端輸出
Validating podspec -> YourNameLibrary (.)
恭喜你,That`s all. Thank you. 你可以去意淫了
更多前往: http://blog.csdn.net/top_roboo?viewmode=list