SDK提交到CocoaPods

 一:GitHub新建倉庫,並clone到本地

一、註冊GitHub帳號並登陸 
二、右上方點擊+,新建倉庫(倉庫名字(Repository name)、倉庫權限(Public)、readme、license)ios

 

 

 建立完成以下圖:git

三、檢出倉庫github

新建一個文件夾SDK:json

打開終端:瀏覽器

 

將FireRadarSDK文件夾拖進SDK裏的克隆後的FireRadarSDK文件夾中安全

 

關掉終端,從新打開,切換到git倉庫目錄網絡

cd /Users/huangzengsong/SDK/FireRadarSDK框架

 

二:更新CocoaPods版本

查看cocoapods的版本號大數據

pod  --versionui

確保cocoapods的版本號大於0.33,若是不大於須要先更新版本(不管版本號多大最好都更新一下)

sudo gem install cocoapods

註冊Trunk帳戶(郵箱地址建議寫成github註冊的郵箱,用戶名寫成github對應的用戶名)

pod trunk register 郵箱地址 '用戶名' --verbose

註冊命令執行完以後,對應的郵箱地址會收到一封郵件,「請確認您的註冊CocoaPods經過點擊如下連接:」,打開連接地址完成驗證,若是地址不能點擊就直接粘貼URL到瀏覽器上執行 

查看本身的註冊信息

pod trunk me

三:新建.podspec文件

pod spec create FireRadarSDK

注意:將代碼提交到CocoaPods最容易出錯的地方就是該.podspec文件,有可能多一個鍵或者少一個鍵、寫錯一個值都有可能在提交時出錯,這裏給出一份個人庫中的,建議將個人.podspec文件拷貝一份,而後修改每一個鍵對應的值,通常.podspec文件名和倉庫的名字一致

Pod::Spec.new do |s|
s.name = 'FireRadarSDK'
s.version = '2.0.0'
s.summary = '安全反欺詐SDK'
s.description = '利用大數據處理,人工智能進行安全預警'
s.homepage = 'https://github.com/huangzs/FireRadarSDK'
s.social_media_url = 'http://www.fireradar.com.cn/'
s.license= { :type => 'MIT' }
s.author = { 'huangzs' => '759952579@qq.com' }
s.source = { :git => 'https://github.com/huangzs/FireRadarSDK.git', :tag => s.version }
s.source_files = 'FireRadarSDK/FRSDK.framework/Headers/*.{h}'
s.vendored_frameworks = 'FireRadarSDK/FRSDK.framework'
s.platform = :ios, '8.0'
s.frameworks = 'UIKit'
s.requires_arc = true
s.dependency 'AFNetworking', '~> 3.1.0'
s.dependency 'FMDB', '~> 2.7.2'
s.dependency 'AvoidCrash', '~> 2.3.0-beta'
end

s.name:名稱,pod search 搜索的關鍵詞,注意這裏必定要和.podspec的名稱同樣,不然報錯

s.version:版本號

s.ios.deployment_target:支持的pod最低版本

s.summary: 簡介 s.homepage:項目主頁地址

s.license:許可證 s.author:做者

s.social_media_url:社交網址

s.source_files:須要包含的源文件

s.resources: 資源文件

s.requires_arc: 是否支持ARC

s.dependency:依賴庫,不能依賴未發佈的庫,如 s.dependency = ‘AFNetworking’ s.dependency:依賴庫,若有多個能夠這樣寫

source_files:寫法及含義建議你們寫第一種或者第二種

"FireRadarSDK/* "

"FireRadarSDK/FireRadarSDK/*.{h,m}"

"FireRadarSDK/**/*.h"

  • 「*」 表示匹配全部文件
  • 「*.{h,m}」 表示匹配全部以.h和.m結尾的文件
  • 「**」 表示匹配全部子目錄

 

4、提交工程到git,並打tag2.0.0版本

(.podspec, LICENSE 這兩個文件必須提交到git上)

 

git add .

git commit -m "2.0.0"

git push

git tag 2.0.0

git push --tags

 

 

若是在操做過程當中想刪除tag,可使用以下命令(刪除tag不屬於整個過程的步驟,這裏只是提供刪除tag的命令,在須要使用時能夠查看):

git tag // 查看tag 
git tag -d 2.0.0 //刪除一個指定的tag 
git push origin :refs/tags/2.0.0 // push到遠程tag

 

 

5、 提交以前先驗證.podspec文件是否合法

pod spec lint FireRadarSDK.podspec

有警告暫時不影響,下面提交用--allow-warnings忽略他們

 

6、提交.podspec文件到trunk中

pod trunk push FireRadarSDK.podspec

由於有警告 能夠用下面的

pod trunk push FireRadarSDK.podspec --use-libraries  --allow-warnings

只要驗證經過,提交時通常沒有什麼問題, 通常會卡在「Updating spec repo ‘master’」, 這時不要關閉終端,要等,根據網絡不一樣提交時可能要花幾分鐘時間,甚至是10分鐘都有可能,成功以下圖

 

7、重置cocoapods

pod setup

8、查找提交成功的庫

pod search FireRadarSDK

 

若是查不到會報錯以下

 

[!] Unable to find a pod with name, author, summary, or description matching

 

解決方案: 先刪除search_index.json文件,而後再search (文件不存在時會自動下載,根據不一樣的網絡可能要花一會時間,要等)

 

rm ~/Library/Caches/CocoaPods/search_index.json 

 

pod search FireRadarSDK

 

9、從cocoapods移除剛纔的框架

(移除框架不屬於整個過程的步驟,這裏只是提供移除框架的命令,在須要使用時能夠查看)

 

pod trunk delete FireRadarSDK 2.0.0

相關文章
相關標籤/搜索