CocoaPodsは、とても便利なツールですが、公式にサポートしているライブラリは「CocoaPods/Specs」に登録されているものだけです。また、自分で作成したライブラリも、当然ですがCocoaPodsには登録されていません。
ここでは、自分で作成したライブラリをCocoaPods経由でプロジェクトにインストールする方法を紹介します。
ちなみに、現在「CocoaPods/Specs」に登録されているライブラリの一覧は、「pod list」コマンドで確認できます(3500以上のライブラリのリストが表示されるので注意してください)。
まずは、適当な新規プロジェクトを作成します(ここでは「MyLibrary」としました)。
プロジェクト作成後、下記コマンドで「podspec」ファイルを作成します。
$ pod spec create MyLibrary Specification created at MyLibrary.podspec
作成された「MyLibrary.podspec」を以下のように編集します。
Pod::Spec.new do |s| s.name = 'MyLibrary' s.version = '0.0.1' s.license = 'MIT' s.summary = 'This is my sample library for iOS.' s.homepage = 'https://github.com/kzhkwkt/MyLibrary.git' s.author = { "kwakata" => "kwakata@sonix.asia" } s.source = { :git => "https://github.com/kwakata/MyLibrary.git", :tag => "#{s.version}"} s.source_files = 'MyLibrary/Classes' end
podspecファイルに記述する項目には、以下のようなものがあります。
属性 | 内容 |
---|---|
name | ライブラリの名称 |
version | ライブラリのバージョン |
license | ライブラリに適用されているライセンス |
summary | ライブラリの簡単な説明 |
homepage | ライブラリの公開URL |
author | 著作者情報。メールアドレスを公開しない場合は下記だけでよい s.author = ‘kwakata’ |
source | ソースコード入手先のURL Gitだけではなく、SubversionやMercurial なども指定可能 |
source_files | ライブラリで実際に使用するファイルのパスを指定 |
他にもオプションとして、さまざまな設定が可能です。詳細は公式リファレンスを参照してください。
続いて、プロジェクトをGitHubのリポジトリへpushします(GitHubのアカウント作成の手順については省略します。適宜GitHubアカウントを用意してください)。
[New repository]ボタンをクリックします。
[Repository name]に「MyLibrary」を入力し、[Create repository]ボタンをクリックします。
これでリポジトリの作成完了です。
ローカルで作成したMyLibraryプロジェクトをリポジトリへpushします。
$ git init Initialized empty Git repository in /Users/kwakata/works/workspace-ios/MyLibrary/.git/ $ git remote add origin https://github.com/kwakata/MyLibrary.git $ git commit -m “first commit” $ git push
CocoaPodsSampleプロジェクトのPodfileに「MyLibrary」を追記します。
platform :ios, "6.0" pod 'AFNetworking', '~> 2.0' pod 'TTTAttributedLabel' pod 'MyLibrary', :git => 'https://github.com/kwakata/MyLibrary.git'
「pod update」コマンドを実行し、ライブラリを更新します。
$ pod update Analyzing dependencies Pre-downloading: `MyLibrary` from `https://github.com/kwakata/MyLibrary.git` Downloading dependencies Using AFNetworking (2.1.0) Installing MyLibrary (0.0.1) Using TTTAttributedLabel (1.8.1) Generating Pods project Integrating client project
更新が完了すると、CocoaPodsSampleプロジェクトに 「MyLibrary」がインストールされています。
以降、別のプロジェクトで「MyLibrary」を使いたい場合は、プロジェクト作成後 Podfileに記述し、「pod install」コマンドを実行するだけでOKです。
以上、CocoaPodsの基本的な使い方でしたが、いかがでしたでしょうか。基本的にライブラリを追加するときは、Podfileに使いたいライブラリを追記して「pod install」コマンドを実行するだけなので、とても簡単です。
今回で、iOSアプリ開発者向けのライブラリ連載は最終回です。ご愛読ありがとうございました。本連載を活用して、iOSアプリ開発の生産性をガチアゲしていただければ幸いです。
立花 優人(たちばな ゆうと)
株式会社ソニックス Co-Founder&Architect
「TNV(作らずに、ニーズを満たし、バリューを上げる)」をモットーに各種スマートデバイスアプリケーション開発におけるシステム設計や先進技術を使用した開発に従事。「たっちー」の愛称で親しまれていると誤解している、趣味はグランドハープのミニおっさん。
Copyright © ITmedia, Inc. All Rights Reserved.