プログラミングノート

一からものを作ることが好きなエンジニアの開発ブログです。

自前ライブラリのCocoaPods対応メモ

git submoduleで管理している自前ライブラリ郡をそろそろCocoaPodsで管理してみたいなと思ったので試してみることに。まずは公式ドキュメントにあるPrivate Podsの通り、独自のリポジトリを作ったりしてみたのだけれどちょっと面倒くさかったので、ライブラリに直接podspecファイルを追加する方法で対応。

1. ライブラリ用のリポジトリを作成してタグをつけておく(tag=0.0.1)
https://github.com/ntaku/ASExtensions

2. ASExtensions.podspecをライブラリ直下に配置

Pod::Spec.new do |s|
  s.name        = "ASExtensions"
  s.version      = "0.0.1"
  s.license      = { :type => 'MIT', :file => 'LICENSE' }
  s.summary      = "Objective-C categories"
  s.homepage     = "https://github.com/ntaku/ASExtensions"
  s.author       = { “Author” => “mail “address }
  s.source       = { :git => "https://github.com/ntaku/ASExtensions.git", :tag => "#{s.version}" }
  s.platform     = :ios, '6.0'
  s.requires_arc = true
  s.public_header_files = 'ASExtensions/*.h'
  s.source_files  = 'ASExtensions/**/*.{h,m}'
end

3. lintでspecファイルのチェックしてvalidationが通ったらpush

$ pod lib lint

これでCocoaPods対応できたので、今度は利用したいプロジェクト側のPodfileで指定すればOK。

pod 'ASExtensions', :git => 'https://github.com/ntaku/ASExtensions.git', :tag => '0.0.1'