Pod::Spec.new do |s|
s.name = 'SPEC_NAME' # pod名烁峭,一般與倉庫名相同
s.version = '1.0.0' # 版本號
s.summary = <<-DESC # 簡介
簡介寫在這里容客,一般不超過140個英文字符
DESC
s.description = <<-DESC # 詳細介紹
詳細介紹寫在這里
DESC
s.homepage = 'https://git.yourcompany.com/iOSPods/SPEC_NAME' # 項目倉庫地址
s.license = { :type => 'yourcompanyLicense', :file => 'LICENSE' } # 協(xié)議,這種方式必須包含協(xié)議文件LICENSE
s.author = { 'yourcompany' => 'yourcompany-ios@yourcompany.com' } # 作者聯(lián)系方式约郁,固定不改變
s.source = { :git => 'git@git.yourcompany.com:iOSPods/SPEC_NAME.git', :tag => s.version} # git地址和tag
s.frameworks = 'Foundation', 'UIKit' # 使用的系統(tǒng)framework
s.weak_frameworks = 'WebKit', 'UserNotifications' # 使用高版本iOS系統(tǒng)才有的framework, optional導入
s.libraries = 'z', 'sqlite3' # 如:使用系統(tǒng)的libz.tbd缩挑,libsqlite3.tbd
s.vendored_frameworks = '/.framework' # 如果項目中有包含framework,使用 vendored_frameworks
s.vendored_libraries = '/.a' # 如果項目中有包含.a鬓梅,使用 vendored_libraries
s.source_files = 'Folder//.{h,m}' # 源文件目錄供置, ** 代表所有Folder的子目錄, .{h,m} 代表所有以 .h 和 .m 結(jié)尾的文件
s.public_header_files = 'Folder//.h' # public 的頭文件绽快,不寫默認為源文件中所有的.h文件
s.pod_target_xcconfig = {'ENABLE_BITCODE' => 'NO'} # 設(shè)置 pod 中該 target 的 Build Setting, 選擇使用, key 為 project.pbxproj 中 buildSettings 的 key
s.user_target_xcconfig = {'OTHER_LDFLAGS' => '-lstdc++ -ObjC'} # 設(shè)置使用該庫主工程的 target 的 Build Setting, 選擇使用, key 為 project.pbxproj 中 buildSettings 的 key
s.xcconfig = {'OTHER_CFLAGS' => '-DMAGICKCORE_HDRI_ENABLE=0', 'OTHER_LDFLAGS' => '-lstdc++'} # 設(shè)置本 target 和使用的 target 的 Build Setting, 選擇使用, key 為 project.pbxproj 中 buildSettings 的 key
# 資源文件芥丧,png, xib, storyboard, plist等非編譯的資源文件都寫在這里, 不要將info.plist
放進去,有些項目可能會有問題
s.resources = 'Folder//.{png,xib,plist}'
s.exclude_files = '**/*.md', '**/LICENSE' # 同時導入的文件坊罢,不參與編譯不參與拷貝续担,但是會同時下載到項目中
s.dependency 'YYModel', '~> 1.0' # 依賴1,直接寫依賴的 pod 名稱
s.dependency 'YYCache', '~> 1.0' # 依賴2活孩,直接寫依賴的 pod 名稱
s.requires_arc = true # 是否使用ARC, 默認為true
s.static_framework = true # 是否使用靜態(tài)的framework物遇,如果必須使用靜態(tài)的framework,則設(shè)置為true憾儒,否則不設(shè)置询兴,不要強制用戶設(shè)置靜態(tài)庫
s.ios.deployment_target = '9.0' # 支持的iOS系統(tǒng)版本
# 如果需要創(chuàng)建子spec,使用這種方式起趾,但必須保證每個子spec都可以單獨編譯
# pod不會按照原先的文件目錄進行導入诗舰,如果想讓pod中按目錄顯示,必須使用子spec方式
s.subspec 'SUB_SPEC_NAME' do |ss|
ss.dependency 'YYCache', '~> 1.0' # 依賴1训裆,直接寫依賴的 pod 名稱
ss.source_files = 'SubSpecFolder/**/*.{h,m}'
ss.public_header_files = 'SubSpecFolder/**/*.h'
ss.exclude_files = 'SubSpecFolder/**/*.md'
ss.resources = 'SubSpecFolder/**/*.{png,xib,plist}'
end
end