Create new file
並輸入LICENSE
,點擊右上角出現的Choose a license template
選擇須要的證書並添加進去設置完成後直接克隆到本地,並將工程代碼複製進該文件夾ios
cd xxx
pod spec create xxx
Alamofire
@version = "0.0.1" Pod::Spec.new do |s| s.name = "MCircleBoard" s.version = @version s.summary = "MCircleBoard" s.description = "MCircleBoard is a dash board." s.homepage = "https://github.com/MichaelLynx/MCircleBoard" s.license = { :type => "MIT", :file => "LICENSE" } s.author = { "xxx" => "xxxxxx@qq.com" } s.platform = :ios s.ios.deployment_target = "8.0" s.source = { :git => "https://github.com/MichaelLynx/MCircleBoard.git", :tag => "v#{s.version}" } s.source_files = "Code/*.swift" s.resources = ["Code/*.xcassets"] s.swift_version = "4.0" s.requires_arc = true s.framework = "UIKit" end
s.dependency "AFNetworking", '~> 3.0'
name
、version
、summary
、homepage
、license
、author
、deployment_target
、source
、source_files
、requires_arc
source_files
:最好把要上傳的文件放在專門的文件夾下resource
\`resources\\
resource_bundles`spec裏添加資源:git
spec.resource = 'Code/MCircleBoardIcon.bundle' spec.resources = ['Images/*.png', 'Sounds/*'] spec.resource_bundles = { 'YourBundleName' => ['MapView/Map/Resources/*.png'], 'OtherResources' => ['MapView/Map/OtherResources/*.png'] }
bundle內圖片的調用方式:github
var bundle = Bundle(for: theClass.self) if let resoucePath = bundle.path(forResource: "bundleName", ofType: "bundle"), let resouceBundle = Bundle(path: resoucePath) { bundle = resouceBundle } let image = UIImage(named: imageName, in: bundle, compatibleWith: nil) ?? UIImage()
theClass
:工程項目名稱;bundleName
:對應的bundle的名字podspec字段說明:swift
字段 | 做用 |
---|---|
name | 庫的名稱 |
version | 版本號,該號必定要和GitHub上的對應,參見下面的步驟 |
summary | 該庫的一個簡介 |
homepage | 這個庫的主頁,對應Github上的地址 |
license | 採用何種license,和建立GitHub時候選擇的那個要對應 |
author | 做者 |
deployment_target | 可使用該庫的iOS的最低版本 |
source | 數據源,對應的是你clone 的時候使用的那個HTTPS 的連接地址 |
source_files | 哪些文件是要上傳到pods的 |
requires_arc | 是否在ARC環境下使用 |
dependency | 該庫還引用了哪些第三方庫 |
Tag version
以v開頭,後接版本號,標題release title
須要填寫若是已經註冊成功帳號,則這步跳過
在終端輸入指令:ruby
pod trunk register 郵箱地址 '用戶名' —description='描述信息' 或 pod trunk register 郵箱地址 '用戶名' --verbose
驗證成功後在終端輸入如下命令確認是否註冊成功ui
pod trunk me
若是確認podspec文件沒問題則能夠不進行驗證若是配置得正確,則輸入驗證命令後會提示:
passed validation.
code
podspec文件配置完成以後能夠在終端輸入指令進行驗證orm
pod spec lint XXX.podspec
XXX.podspec
可省略pod lib lint
只從本地驗證你的pod可否經過驗證;pod spec lint
從本地和遠程驗證你的pod可否經過驗證。pod lib lint
可省略,直接用pod spec lint
進行驗證輸入如下指令將代碼上傳到cocoapods:圖片
pod trunk push
若是以前驗證的結果裏有warning
,則能夠用--allow-warnings
忽略警告:ip
pod trunk push --allow-warnings
完成後出現Tell your friends
字樣則證實上傳完畢,能夠經過pod search XXX
指令來驗證是否上傳成功。
若是沒搜索出來則能夠經過pod repo update
更新本地的pod庫,而後再進行搜索。
若是事先已經下載了舊版的庫,能夠直接cd到該工程,並pod update 第三方庫名
,哪怕暫時沒法搜索出來,pod update
依然能夠有效將其更新到最新版本。
如下是我本身建立的第三方庫,歡迎點個Star,也歡迎相互交流。
MCircleBoard