今是昨非

今是昨非

日出江花红胜火,春来江水绿如蓝

CocoaPod 私有库Spec依赖.a写法

CocoaPod 私有库 Spec 编辑注意事项#

CocoaPod 私有库 Spec 依赖.a 写法

PodSpec 详细描述如下,


Pod::Spec.new do |s|

  # 库名称
  s.name             = 'AudioRecorder'
  
  # 库的版本
  s.version          = '0.1.0'
  
  # 库摘要
  s.summary          = 'AudioRecorder提供iOS录音和录音播放功能'

  # 库描述
  s.description      = <<-DESC
						AudioRecorder提供iOS录音和录音播放功能
                       DESC
  # 远程仓库地址
  s.homepage         = 'https://github.com/xxx'
  
  # 截图
  # s.screenshots     = 'www.example.com/screenshots_1', 'www.example.com/screenshots_2'
  
  #  MIT许可证,软件授权条款
  s.license          = { :type => 'MIT', :file => 'LICENSE' }
  
  # 作者信息
  s.author           = { 'MorganWang' => '[email protected]' }
  
  # 支持的系统及支持的最低系统版本
  # s.platform     = :ios
  # s.platform     = :ios, "8.0"

  # 支持多个平台使用时
  s.ios.deployment_target = "10.0"
  # s.osx.deployment_target = "10.7"
  # s.watchos.deployment_target = "2.0"
  # s.tvos.deployment_target = "9.0"

  # 下载地址
  s.source           = { :git => 'xxx.git', :tag => s.version.to_s }

  # 库文件在仓库中的相对路径
  # 等号后面的第一个参数表示的是要添加 CocoaPods 依赖的库在项目中的相对路径
  # 等号后面的第二个参数,用来指示文件夹下的哪些文件需要添加 CocoaPods 依赖
  # “**”通配符表示文件夹下的所有文件,“*.{h,m}”代表所有的.h, .m文件
  s.source_files = 'AudioRecorder/Classes/**/*'
  
  # 设置不需要添加到 CocoaPods 的文件
  # s.exclude_files = "xxx/Exclude"
  
  # https://blog.csdn.net/w_shuiping/article/details/80606277
  # CocoaPods中依赖的第三方.a或者.framework库
  s.vendored_libraries = 'AudioRecorder/Classes/lame/*.a'
  
  # s.resource_bundles = {
  #   'AudioRecorder' => ['AudioRecorder/Assets/*.png']
  # }

  # s.public_header_files = 'Pod/Classes/**/*.h'
  
  # 库中用到的框架或系统库
  s.frameworks = 'UIKit', 'Foundation', 'AVFoundation'
  
  # 库中依赖的其它CocoaPods的第三方库,依赖多个写多个s.dependency
  s.dependency 'Masonry', '~> 1.1.0'
end



库校验


pod lib lint --allow-warnings

使用#

使用 tag 或者使用分支,通常使用 tag,因为 tag 代表功能的完整性。如果使用分支,随后在分支上继续开发,然后再次 update 依赖时,可能会出现新开发的内容未验证就被更新了或者不兼容的情况


  pod 'xxx',:git=>'xxx.git',:tag=>'0.7.0'
  pod 'yyy',:git =>'yyy.git',:branch=> 'develop'

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。