1. 程式人生 > >如何製作自己的CocoaPod庫

如何製作自己的CocoaPod庫

製作流程圖:


流程圖

1.將程式碼託管在github上

1.1原生代碼

如圖:


Snip20161228_7.png


在github上建立 並上傳


Snip20161228_3.png

切換到本地專案cd xxx路徑後 用git命令列 (記不住命令列 git help) 步驟如下:

$ git init
$ git add /Users/kevin/Desktop/xxx //直接拖拉專案資料夾
$ git commit -m 'frsit commit' //推到本地倉庫
$ git remote add origin https://github.com/xxx/xxx.git //本地倉庫關聯github


$ git push -u origin master //推到遠端github

給專案branches打上指定的tag

# 打tag
git tag -m "New Tag" '1.0'
# 把tag推到遠端倉庫
git push --tags

2.構建Pod管理

拉取github程式碼到pods管理本地目錄中(本地資料夾:~/.cocoapods/repos )

# pod repo add [私有專案名(repo庫)] [github地址]
$ pod repo add  KKSWiftHUD  https://github.com/xxx/xxx.git

執行後可以cmd+shift +G 輸入~/.cocoapods/repos

 檢視檔案的存在
ok ,接下來開始建立pod的一個關鍵檔案(類似專案中Podfile檔案)

還是回到專案檔案中來(檢視ls

一 、建立podspec檔案

# 建立podspec檔案
$ pod spec create KKSwiftHUD

這時專案中會生成一個KKSwiftHUD.podspec檔案 用XCode 開啟
把這個貼上覆蓋過去 ( 系統生成很多,這些引數夠用了)

Pod::Spec.new do |s|

s.name         = "KKSwiftHUD"
s.version      = "1.0"
s.summary      = "Notification HUD for ios."
s.homepage = "https://github.com/one-tea/KKSwiftHUD.git" s.license = { :type => "MIT", :file => "LICENSE" } s.author = { "Zhang KK" => "[email protected]" } s.platform = :ios, "8.0" s.source = { :git => "https://github.com/one-tea/KKSwiftHUD.git", :tag => "1.0" } s.source_files = "KKSwiftHUDLib/*" s.framework = "UIKit" s.requires_arc = true # s.frameworks = "SomeFramework", "AnotherFramework" end

根據自己的資訊 ,進行編輯xxx.podspec檔案

s.name         = "xxx" //pod名字
s.version      = "1.0"//版本號 
s.summary      = "Notification HUD for ios."//簡介
s.homepage     = "https://github.com/xxx.git"// 託管地址
s.license      = "MIT"
s.author       = { "Zhang KK" => "[email protected]" }// 個人資訊
s.platform     = :ios, "8.0"
s.source       = { :git => "https://github.com/one-tea/KKSwiftHUD.git", :tag => "1.0" }// github上地址和tag
s.source_files = "KKSwiftHUDLib/*"  //相對於``KKSwiftHUD.podspec``的路徑地址,/**:表示在``KKSwiftHUDLib``下所有檔案 ,如果是OC語言也可以用正則語法``KKSwiftHUDLib/**/*.{h,m} `` 
s.framework       = "UIKit" //依賴庫
s.requires_arc = true
s.resources = "KKSwiftHUD/*.png" 圖片資源

引數的註釋:

 name: 匯入pod後的目錄名 
 version: 當前版本號
 deployment_target: 配置的target 
 prefix_header_file: 預編譯標頭檔案路徑,將該檔案的內容插入到Pod的pch檔案內
 source: 來源的具體路徑,是http連結還是本地路徑 requires_arc: 是否需要arc
 source_files: 指定該目錄下包含哪些檔案 其他可選引數還包括: dependency: 指定依賴,如果依賴的庫不存在或者依賴庫的版本不符合要求將會報錯
 libraries: 指定匯入的庫,比如sqlite3
 frameworks: 指定匯入的framework 
 weak_frameworks: 弱連結,比如說一個專案同時相容iOS6和iOS7,但某一個framework只在iOS7上有,這時候如果用強連結,那麼在iOS7上執行就會crash,使用weak_frameworks可以避免這種情況。

萬用字元說明:

a{bb,bc}def.{h,m}表示四個檔案abbdef.h abbdef.m abcdef.h abcdef.m
*.{h,m,mm}表示所有的.h .m .mm檔案Class/**/*.{h,m}表示Class目錄下的所有.h .m檔案

二、測試下podspec配置檔案是否有錯誤

$ pod lib lint  // 驗證是否有合格
$ pod spec lint  // 這個也可以驗證

注:如果出現WARN 可以加入--allow-warnings忽略
需要花些時間,最後沒有error提示則成功

三、 提交podspec到私有庫

# pod repo push [repo倉名] [podspec檔名]

$ pod repo push  xxx  xxx.podspec

完成之後這個私有庫就新增到我們的私有Spec Repo中,可以進入到~/.cocoapods/repos目錄下檢視

接下來推送到遠端CocoaPod倉, 這樣別人就可通過 pod search xxx來搜到並使用

四、建立一個trunk賬號(用於上傳到公共庫Cocoapods)

$ sudo gem install cocoapods // 先更新下Cocoapods版本
$ pod trunk register 郵箱 '暱稱' --verbose // 填寫賬號資訊,註冊完要去郵箱點一個驗證郵件(郵箱最好和git的郵箱保持一致)
$ pod trunk me // 驗證完成後可以檢視賬號資訊

填寫賬號資訊,註冊完要去郵箱點一個驗證郵件(郵箱最好和git的郵箱保持一致)
執行結果,成功


Snip20161229_11.png

五 最後一步 trunk提交就可以了

# 提交podspec檔案到trunkpod trunk push NNATree.podspec
  pod trunk push --allow-warnings

需要一會時間


圖片.png

成功了!
pod search xxx 可能需要等一會才能搜到 或者執行 pod setup試試

最後:

  1. 刪除一個私有庫
    $ pod repo remove xxx
    這樣就從本地刪除了當然我們還可以通過下面的程式碼添加回來
    $ pod repo add NNASpec http:// github.com/xxx.git
  2. CocoPod管理命令


    遠端庫管理

    圖片.png

相關推薦

在CocoaPods上製作自己

CocoaPads作為管理第三方庫的神器,有時候自己寫的好的庫也希望,放在上面去,不敢說給別人用,讓別人喜歡,最起碼自己熟悉,下次自己倒進來就能用,也有也有人喜歡把那些庫打成.a的包,這樣也可以。只要你喜歡隨便嘍。我是覺得打包成.a不太方便版本管理,不太方便升級

關於如何製作自己的Java第三方類,以及如何製作自己的Javadoc

隨著自己程式設計能力的提升以及參加專案的增多,越來越強烈地感覺到,好多曾經專案中使用過的Java類以及方法, 在正在參加的專案中也需要使用,而如果只是單純地複製,貼上,顯然既不美觀,也會出現很多問題,比如忘記方 法到底是如何實現,返回型

如何製作自己CocoaPod

製作流程圖: 流程圖 1.將程式碼託管在github上 1.1原生代碼 如圖: Snip20161228_7.png 在github上建立 並上傳 Snip20161228_3.png 切換到本地專案cd xxx路徑後 用git命令列 (記不住命令列 git help) 步驟如下:

Android如何製作自己的依賴上傳至github供別人下載使用

在Android專案中經常需要依賴使用別人開發的第三方依賴庫,使開發更加方便。比如我下面用到的幾個依賴庫:那麼這些依賴庫是怎麼製作的呢,在這篇文章中介紹其中兩種比較常見的方法。 方法一: 首先,需要製作一個自己的依賴庫,即新建一個空白專案,選址new module或者im

原生JavaScript 仿 echart 外掛製作自己的外掛

本文系原創,轉載請註明出處: 最近在做一個數據大屏的web專案,頁面中經常會用到一些報表、圖表之類的功能,對於圖表我選擇了 echart 外掛,因為 echart 做圖表非常方便,效果也比較滿足要求,但是對於圖表,我則用的是 html 的 table 標籤,每次做都要敲

python_製作自己的函式

在寫程式的時候 , 每次總會寫一些重複的函式, 因此有必要把他們收集一下 再之後的使用中,可以直接使用。 1.自定義log列印函式: #自定義log 列印函式, 以數字定義log 級別 def

上傳自己程式碼到cocopods製作成開源

1.在github 建立一個專案  重點在於 選擇開源專案(MIT)2.git clone 到本地   複製xcode 專案到git克隆所在地 上傳  3.cd 到當前目錄   cd TextDemo4

製作自己的私有釋出到cocoapods

這裡以YWChooseAddressView為例 1、提交code到git倉庫中,並打上tag版本號 注意,如果是用git工具提交的demo,可直接在github上去釋出realese版本 git tag -a 1.0.0 git push origin master 先看看我的目錄結構(包含測試demo、

如何製作自己的Pod

do |s| s.name = "ZXCategory" s.version = "0.0.6" s.summary = "Custom Category used on iOS." s.description = <

如何在KEIL下製作自己檔案

今天自己看stm32在建立工程的時候,包含了一個庫檔案stm3210xR.LIB,而且自己還發現,我無法檢視其中的內容!而且在我編譯我的.c檔案的時候,又發現了在.c檔案裡包含的許多的.h檔案,在其下

設計自己

接口 它的 提取 方法 標準庫 font 倒水 描述 自定義類 *如果你的工作經常要用到一些特殊的工具,你可以設計自己的庫 *一個庫應該有一個主題。一個庫中的函數都應該是處理同一類問題。如標準庫iostream包含輸入輸出功能,cmath包含數學運算函數。我們自己設計的庫也

如何查看自己steam裏遊戲是哪個區的

自己 wall tar 選擇 ges 支付寶 bubuko 快捷 相關 1 開啟Steam開發者模式,切換到控制臺,以便調出遊戲區域數據 1.1 首先找到Steam的快捷方式,在目標一行中最後輸入 -dev (前面帶空格),然後重新運行。 1.2 如下圖上方標簽切換到控制臺

用Photoshop製作自己喜歡的桌面

今天工作完,準備關電腦時,發現桌面已不像樣子了,很是頭痛,然後就試著用Photoshop製作了一個簡單分門類別的桌面,先截個樣本 我的左上角一般放置計算機方面的圖示,中間綠色的框放置開發工具,右上角放置設計工具,左下角是娛樂方面的圖示,右下角都是簡易工具圖示,中間空的那塊放臨時的檔案之

Centos7 使用Dockerfile 製作自己的Dotnetcore程式映象

準備Centos7環境及Docker環境 從Docker hub拉取 Microsoft/dotnet 基礎映象(可以使用國內加速) 向Centos7指定目錄上傳Dotnet Core程式,目錄: /home/firstApp 製作Dockerfile # 1. 進入/home/fir

【新系列】使用微軟的技術體系製作自己的筆記本

概要說明 從12年開始學技術,至今已經過了6個年頭, 算不上成功,但也有逐漸也有了一些行業經驗, 是時候做一款能夠複製且實用的應用了。   為什麼要做筆記本? 1、滿足自身的實用性,我之前每個月都會為筆記本花費12塊錢。 2、筆記本的複用性強,後續可整合自身的雲

批量製作IDA靜態簽名檔案的指令碼

網上有很多文章介紹製作靜態庫簽名(sig)檔案,供IDA載入使用。這些文中都提到一個批處理檔案:lib2sig.bat,不得不說這是一個很強大的指令碼----一次為一個lib檔案生成sig檔案。 但是,美中不足的地方是:如果需要為大量lib檔案製作sig檔案,還是有點麻煩,所

docker中如何製作自己的基礎映象

docker中如何製作自己的基礎映象 一.本地映象 舉個例子:現在把自己的開發環境打包,取名為centos6-base.tar,然後在docker中,以centos6-base.tar作為基準映象。     1.建立自己的映象,放置於/root目錄下:  

如何用GoldWave製作自己的錄音,並配上音樂?

GoldWave(http://www.goldwave.cn/)是一款功能強大的數字音樂編輯器,他體積小巧,功能強大。支援很多音樂格式檔案,甚至可以從CD,VCD或其他視訊檔案中提取聲音。還擁有內容豐富的音效處理特效。今天就來教大家用GoldWave製作自己的錄音並配上音樂。 首先我們要在

TensorFlow 製作自己的TFRecord資料集 讀取、顯示及程式碼詳解

準備圖片資料 筆者找了2類狗的圖片, 哈士奇和吉娃娃, 全部 resize成128 * 128大小 如下圖, 儲存地址為D:\Python\data\dog 每類中有10張圖片   現在利用這2 類 20張圖片製作TFRecord檔案 製作TFRECO

Linux:一步一步製作自己的根檔案系統

一步一步製作自己的根檔案系統 在這裡,實驗過程使用的是九鼎提供的S5PV210開發板,實驗核心同樣來自其官方資料盤中Linux資料包中的的QT4.8中的相關原始碼,實驗的NFS檔案系統在虛擬中的Ubuntu14.04中建立. 建立檔案系統根目錄 root