今是昨非

今是昨非

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

CocoaPod プライベートリポジトリのSpec依存関係.aの書き方

CocoaPod 私有ライブラリの Spec 編集に注意#

CocoaPod 私有ライブラリの Spec 依存関係の書き方

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の依存関係を追加するライブラリの相対パスを示しています
  # 等号の後の2番目のパラメータは、フォルダ内のどのファイルを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

使用方法#

タグまたはブランチを使用します。通常はタグを使用しますが、タグは機能の完全性を表します。ブランチを使用する場合、その後にブランチで開発を続け、依存関係を再度更新する際に、未検証の新しい開発内容が更新されたり、非互換性が発生する可能性があります。


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

読み込み中...
文章は、創作者によって署名され、ブロックチェーンに安全に保存されています。