ひだまりソケットは壊れない

ソフトウェア開発に関する話を書きます。 最近は主に Android アプリ、Windows アプリ (UWP アプリ)、Java 関係です。

まじめなことを書くつもりでやっています。 適当なことは 「一角獣は夜に啼く」 に書いています。

Android アプリ用ライブラリ Volley を準備する

Volley?

こないだの Google IO で発表された Google 製の Android アプリ開発用のネットワーク周りのライブラリ。 便利っぽい。

ソースコードを読んだところ、ライセンスは Apache License, version 2.0 とのこと。

Volley プロジェクトを別のプロジェクトから利用するには?

そのうち jar ファイルが配布されたりすると思うけど、現時点 (2013-06-08) では Git リポジトリが公開されてるだけなので自分でビルドして jar ファイルを作るなり、Volley のプロジェクトをライブラリプロジェクトとして自分のプロジェクトから参照するなりする必要がある。 どうすればいいかわかってる人は困らないだろうけど、Eclipse とか Java とかに詳しくない人は困りそうなのでいくつか方法を書いておく。

Volley リポジトリを Git サブモジュールとして追加して使用する方法 (Eclipse を使っている場合)

自分のプロジェクトを Git でバージョン管理している場合は、Volley をサブモジュールにしたいかもしれない。

その場合は、単に

git submodule add https://android.googlesource.com/platform/frameworks/volley modules/volley

みたいな感じでサブモジュールとして追加すればよい。 あとは Eclipse のプロジェクトの設定を変更し、Volley の src ディレクトリもソースディレクトリとして追加するだけである (下図参考)。

f:id:nobuoka:20130608202914p:plain:w360

これで自分のプロジェクトで Volley が使用可能となる。

Eclipse のプロジェクトとして読み込む方法

Volley を独立したプロジェクトとして Eclipse に読み込ませたい場合はこの方法を使えばよい。

Eclipse 付属の Android SDK Tools の rev.21 をインストールしている環境での話。

Git リポジトリの clone

まずは Git を使ってソースコードを取得する。

Eclipse 組み込みの Git クライアントを使ってもいい *1 し他の方法でも良い。 Eclipse 組み込みの Git クライアントを使った場合は、clone 後に Eclipse の workspace にプロジェクトをインポートすることができるが、それはしないでおくこと *2

git clone https://android.googlesource.com/platform/frameworks/volley

プロジェクトのインポート

Git clone してきたプロジェクトをインポートする。 Eclipse の “Import” の “Android” から “Existing Android Code Into Workspace” を選択し、clone してきたリポジトリのディレクトリを選択する。 あとは適当に入力していけばインポートできるはず *3

Eclipse のプロジェクトとしてインポートした後は?

Eclipse のプロジェクトとしてインポートした後は、別のプロジェクトから Volley のプロジェクトを参照して使うか、もしくは Volley プロジェクトをビルドして jar ファイルを作ってそれを使うかのどちらか。

Volley のプロジェクトをライブラリプロジェクトにして、自分のプロジェクトから参照する

Volley プロジェクトの設定ウィンドウを開いて、“Android” タブを開く。 “Is Library” というチェック項目があるのでそこにチェックすると、Volley プロジェクトがライブラリプロジェクト *4 になる。

次に、自分のプロジェクトの設定ウィンドウを開き、“Android” タブを開く。 “Library” の “Add” をクリックして、“Volley” プロジェクトを選択すれば完了。 これで自分のプロジェクトで Volley が使用できる。

ビルドして jar ファイルを作る

Volley プロジェクトの build.xml を右クリックして “Run as” から “1 Ant Build” を選択すればビルドできるはず。

...\volley\build.xml:55: sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable.

みたいなエラーがでてビルドに失敗するかもしれないが、その場合は local.properties というファイルをプロジェクトディレクトリ直下に作り、以下のように Android SDK Tools のディレクトリのパスを記述すればよい。

sdk.dir=C:\\Android\\adt-bundle-windows-x86_64-20130219\\sdk

ビルドに成功すれば bin ディレクトリの中に volley.jar というファイルができているはずである。 この jar ファイルを自分のプロジェクトの libs ディレクトリに入れれば Volley を使用できる。

Android Studio にインポートする方法

コミット c3dea925af9b3523e2e01e8b7799e71ef558c1c5 時点では Volloey のプロジェクトは Eclipse プロジェクト (?) になっているので、Android Studio にインポートするには build.gradle ファイルを作る必要があると思われる。 Eclipse も使える環境ならば、一度 Eclipse にインポートして、build.gradle を生成しつつエクスポートするのが良さそう。 次のドキュメントが参考になる。

追記

Android Studio で Volley を使う方法について新たに記事を書きました。 上記内容は古いので次の記事を参照してください。

コマンドラインツールを使用する場合

普段コマンドラインツールを使っている人は、ant コマンドを使ってビルドして jar ファイルを作ればよさそう。

Volley のプロジェクトをライブラリプロジェクトにして、自分のプロジェクトから参照するようにしたい場合は次のドキュメントが参考になる。

携帯OS教科書 Androidアプリケーション技術者ベーシック

携帯OS教科書 Androidアプリケーション技術者ベーシック

*1:Eclipse 組み込みの Git クライアントを使う場合は、“Import” の “Git” から “Projects from Git” を選んで、後は適切な値を入力していく。

*2:Android プロジェクトとしてインポートできないので

*3:原因はよくわかってないのだけど、Git clone したディレクトリが workspace に存在する場合は、インポートに失敗するかもしれない。

*4:ライブラリプロジェクトは単独でアプリとしてビルドできないが、別のプロジェクトから参照して使用可能。