Objective-Cライブラリ管理/ビルドツール「CocoaPods」について、概要と環境構築、設定、実行の仕方、GitHubとの連携方法を解説します。
本連載「生産性ガチアゲなオープンソースiOSライブラリ」で紹介してきた通り、iOS向けのライブラリには、さまざまなものがあります。アプリを開発する際に、そのようなさまざまな外部ライブラリを使用して開発することになると、それらのライブラリの管理が大変になってくる場面もあると思います。今までは、GitHubなどから必要なライブラリをダウンロードして、プロジェクトに手作業で追加する必要がありました。
しかし、「CocoaPods」を使うことで、これら一連の作業を簡単な記述とコマンドだけで完了できます。
そこで今回は連載の最終回として、MacアプリやiOSアプリ開発者向けのObjective-Cライブラリ管理ツール「CocoaPods」を紹介します。
まずは、CocoaPodsのインストールからです。CocoaPodsを使用してライブラリをプロジェクトにインストールするまでの手順を見ていきましょう。
CocoaPodsのインストールにはRubyが必要ですが、(Mac)OS X上には既にRubyがインストールされているので、ターミナルを開き以下のコマンドを実行します。
$ sudo gem install cocoapods [!] If this is your first time install of CocoaPods, or if you are upgrading, first run: $ pod setup Successfully installed xcodeproj-0.0.2 Successfully installed cocoapods-0.3.9 2 gems installed
CocoaPodsで扱うライブラリの情報をセットアップします。
$ pod setup Updating spec repo `master'
上記のコマンドを実行すると、「~/.cocoapods」ディレクトリに「CocoaPods/Specs」にあるファイルが展開されます。CocoaPodsは「~/.cocoapods」ディレクトリ内のファイルを利用してライブラリの管理を行っています。
「~/.cocoapods」を更新する場合は、再度「pod setup」コマンドを実行すればOKです。
CocoaPodsを利用するXcodeのプロジェクトを用意しておきます。ここでは、「CocoaPodsSample」という名前で、iOSアプリのプロジェクトを用意します。
前回の「ネットワーク接続の激ムズデバッグをログ収集で解決!」で紹介した、「AFNetworking」ライブラリをインストールしてみます。先ほど作成した「CocoaPodsSample」プロジェクトの「CocoaPodsSample.xcodeproj」と同じディレクトリに「Podfile」というファイルを用意し、以下の内容を記述します。
platform :ios, "6.0" pod 'AFNetworking', '~> 2.0'
上記のように、使用したいライブラリと、必要であればそのバージョンを指定します。バージョンの指定方法には下記のような記述方法があります。
記述 | 意味 |
---|---|
'1.0' | バージョン1.0を使用 |
'> 1.0' | 1.0 より上のバージョンを使用 |
'>= 1.0' | 1.0 以上のバージョンを使用 |
'< 1.0' | 1.0 未満のバージョンを使用 |
'<= 1.0' | 1.0 以下のバージョンを使用 |
'~> 1.0.2' | 1.0.2 以降のバージョン 1.0.xを使用 |
バージョンを指定しなければ、その時点での最新版を取得します。
「Podfile」が作成できたら、ターミナルでPodfileを保存したディレクトリへ移動し、下記コマンドを実行してインストールします。
$ pod install Analyzing dependencies Downloading dependencies Installing AFNetworking (2.1.0) Generating Pods project Integrating client project
インストールに成功した場合、「Pods」ディレクトリと、「XXXX.xcworkspace」(今回の場合は「CocoaPodsSample.xcworkspace」)ファイルが作成されます。
先ほど作成された「CocoaPodsSample.xcworkspace」を開きます。「Pods」ディレクトリには「AFNetworking」ライブラリに関するファイルと、AFNetworkingが依存するライブラリがインストールされます。
Xcodeで「CocoaPodsSample.xcworkspace」を開くと、ライブラリがセットアップされた状態になっています。
追加で「TTTAttributedLabel」というライブラリも追加してみます。「Podfile」に「TTTAttributedLabel」を追記します。
platform :ios, "6.0" pod 'AFNetworking', '~> 2.0' pod 'TTTAttributedLabel'
追記したら、下記コマンドを実行し、インストールします。
$ pod update Analyzing dependencies Downloading dependencies Using AFNetworking (2.1.0) Installing TTTAttributedLabel (1.8.1) Generating Pods project Integrating client project
ライブラリをプロジェクトから削除する場合は、Podfileから該当の行を削除し、再度「pod update」コマンドを実行すれば、プロジェクトから削除されます。
Copyright © ITmedia, Inc. All Rights Reserved.