讓你的項(xiàng)目支持Cocoa Pods

讓你的項(xiàng)目支持Cocoa Pods,作為第三方庫(kù)方便的被別人使用:

本案前提
  你已經(jīng)有一個(gè)項(xiàng)目,并且上傳到了gitbug上
  項(xiàng)目含有l(wèi)iecnce文件(沒(méi)有的話,后面校驗(yàn)不會(huì)通過(guò))
準(zhǔn)備工作一:注冊(cè)trunk

pod trunk register EMAIL [NAME]

Examples:
$ pod trunk register eloy@example.com `Eloy Durán` --description=`Personal Laptop`
$ pod trunk register eloy@example.com --description=`Work Laptop`
$ pod trunk register eloy@example.com

然后會(huì)收到郵件,點(diǎn)擊郵件鏈接確認(rèn)
準(zhǔn)備工作二:為你的項(xiàng)目添加PodSpec
  在當(dāng)前工作目錄中創(chuàng)建一個(gè)名為NAME.podspec的PodSpec
  pod spec create [NAME|https://github.com/USER/REPO]

編輯本地生成的NAME.podspec文件 

一個(gè)簡(jiǎn)單的例子:
Pod::Spec.new do |spec|
  spec.name             = 'Reachability'
  spec.version          = '3.1.0'
  spec.license          = { :type => 'BSD' }
  spec.homepage         = 'https://github.com/tonymillion/Reachability'
  spec.authors          = { 'Tony Million' => 'tonymillion@gmail.com' }
  spec.summary          = 'ARC and GCD Compatible Reachability Class for iOS and macOS.'
  spec.source           = { :git => 'https://github.com/tonymillion/Reachability.git', :tag => 'v3.1.0' }
  spec.source_files     = 'Reachability.h,m'
  spec.framework        = 'SystemConfiguration'
  spec.requires_arc     = true
end

校驗(yàn):
pod spec lint [NAME.podspec|DIRECTORY|http://PATH/NAME.podspec ...]
或 pod lib lint 
或 pod spec lint --allow-warnings --verbose NAME.podspec 顯示錯(cuò)誤信息和警告
如果有錯(cuò)誤就根據(jù)提示修改NAME.podspec


確認(rèn)無(wú)誤,提交code到git倉(cāng)庫(kù)中,并打上tag版本號(hào)
創(chuàng)建Spec Repo
pod repo add NAME URL [BRANCH]
如:
pod repo add NAME http://PATH/NAME.podspec

遠(yuǎn)程代碼被拷貝在本地,在 ~/.cocoapods/repos/. 中可以查看
這樣我們?cè)谝惶靏ithub上的項(xiàng)目就被指定為Cocoa pods中名為NAME的項(xiàng)目
向Spec Repo提交podspec

#前面是本地Repo名字 后面是podspec名字
pod repo push REPO_NAME SPEC_NAME.podspec
如:
pod repo push myPods somePods.podspec

在項(xiàng)目中使用CocoaPods

touch Podfile

source 'https://github.com/CocoaPods/Specs.git'
source 'https://github.com/Artsy/Specs.git'

platform :ios, '9.0'
inhibit_all_warnings!

target 'MyApp' do
  pod 'GoogleAnalytics', '~> 3.1'

  # Has its own copy of OCMock
  # and has access to GoogleAnalytics via the app
  # that hosts the test target

  target 'MyAppTests' do
    inherit! :search_paths
    pod 'OCMock', '~> 2.0.1'
  end
end

post_install do |installer|
  installer.pods_project.targets.each do |target|
    puts target.name
  end
end
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 178,954評(píng)論 25 709
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)、插件、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 15,198評(píng)論 4 61
  • 吹拂臨波怒海天,潮汕奔流坐參禪,跳出五云掃大地,滿嘴雞毛滾如山,抑郁乎!海州天地,何故狂風(fēng)大作,疾走閃電,枯竹拉朽...
    賽騰煙閱讀 488評(píng)論 4 13
  • 我們活在多荒誕的時(shí)代—— 手機(jī)沒(méi)電了,就代表那個(gè)人失聯(lián)了。 1 當(dāng)手機(jī)電量格由綠色變成紅色時(shí),你便會(huì)開(kāi)始焦躁不安,...
    張嘉豪sky閱讀 597評(píng)論 3 5
  • 以前:使命,投資,樂(lè)趣 現(xiàn)在:責(zé)任,無(wú)私,獨(dú)立 我覺(jué)得人要想過(guò)的辛福,一定要把養(yǎng)孩子這件事從以使命、投資、樂(lè)趣為角...
    筆墨侍書(shū)閱讀 270評(píng)論 0 0

友情鏈接更多精彩內(nèi)容