はじめに
ここではリモートリポジトリに登録されているライブラリや、リモートリポジトリに登録されていないライブラリを使えるようにしてみます。なお、ライブラリの内容については触れません。
ApacheCommonsLangのライブラリを導入してみる
Apache Commonsのライブラリとは、ちょっとした便利な処理がたくさんつまったライブラリですが、Central Repositoryに公開されているので、導入してみます。
app/build.gradleのdependencies内に以下の行を追加します。
compile 'commons-lang:commons-lang:2.6'
全体としてはこのようになるかもしれません。
dependencies {
compile 'com.android.support:support-v4:19.1.0' // ①
compile 'com.android.support:appcompat-v7:19.1.0' // ②
compile 'commons-lang:commons-lang:2.6'
}
なお、ここに書かれた①の行はsupport-v4パッケージの導入を意味しています。Eclipseでは、support-v4.jarをlibsディレクトリに入れていたかと思いますが、このように書くことによって、jarを取り込むことが可能です。②はappcompat-v7パッケージの導入をしています。
Syncする
Android StudioではAutomatically Buildはサポートしていないため、編集しただけでは同期されていません。なので同期を行います。Gradle関係のファイルを編集した場合はこのようなバーが表示されます。
これが表示されている場合は、同期がとれていない合図ですので、そのバーの一番右にあるSync
ボタンを押しましょう。今追加したApacheCommonsLangのライブラリが取り込まれるはずです。
画面中央下のプログレスで現在の実行状況がわかります。プログレスが終了したら、実行完了の合図です。
とりこまれたら、使えるか試してみましょう。
無事、ライブラリのクラスメソッドである`StringUtils.isEmpty()メソッドが使えて、Importが成功していることがわかります。(上の処理自体に意味は無いです…)
これで無事成功です。もちろんちゃんとプログラムを書いて実行しても成功します。
Volleyを導入してみる
Volleyといえば、去年にGoogleが公開した非同期通信のライブラリとして話題になりましたが、そのVolleyをAndroid Studioで導入してみます。
volleyのディレクトリを取得
Googleが公開している場所はGoogleSourceなので、まずはgit clone https://android.googlesource.com/platform/frameworks/volley
コマンドをプロジェクトルートで実行し、ライブラリプロジェクトを取得します。
画面左下のTerminal
を押すと、Android Studio内でターミナルが起動できますのでこちらでやってみてもいいかと思います。
※gitがインストールされていないか、PATHが設定されていないと実行することができません。MacでHomebrewを使っている人はbrew install git
を実行し、gitをインストールしてから再度行ってみてください。Homebrewを使っていない人はGitの公式ホームページから、ご自分のOSのものをインストールしてください。インストールウィザードの途中で、ターミナルやコマンドプロンプトでgitコマンドが使えるようにするか
という質問が(多分英語で)出てきますので、ターミナルやコマンドプロンプトで実行できるようにしておいてください。
完了すると、プロジェクトルートにvolleyディレクトリができます。
volleyディレクトリをライブラリモジュールと認識させる
ここで一度volley内のJavaファイルのアイコンと、app内のJavaファイルのアイコンを比べて見てみましょう。
app内のMainActivity.javaにはCマーク
が付いているのに対し、volley内の複数のJavaファイルには全て禁止マーク
のようなものがついています。これは、volley内のJavaファイルは.javaではあるもののJavaファイルだと認識されていない証拠です。今の状態だとコンパイルも行われません。なので、プロジェクトルートのsettings.gradle
に以下のように追記します。
include ':app', ':volley'
/を:に置換して記述しています。
そして、例によってSyncバーが表示されるので、Syncします。
こんなエラーやこんなエラーが表示されます。
これは、残念ながらvolley内にあるbuild.gradleのbuild Tools revision
が古過ぎるため(下)、もしくはインストールされていないため(上)に発生します。メンテナンスされてなさそうです。なので、volley/build.gradle
の該当箇所を最新のバージョンに更新します。
buildToolsVersion = 19
を
buildToolsVersion = 20
にします。そして再度、バーのSync(一度失敗したのでTry Againになってる)を押します。
完了すると、無事volleyがJavaのプロジェクトファイルだと認識されました!CマークやIマークになっています。
アプリケーションモジュールで使えるようにする
volleyモジュールがライブラリモジュールとして認識されたので、最後にアプリケーションモジュール(アプリ本体)で使えるように設定します。
app/build.gradle
のdependencies内に以下の行を追加します。
compile project(':volley')
全体としてはこのようになるかもしれません。
dependencies {
compile 'com.android.support:support-v4:19.1.0'
compile 'com.android.support:appcompat-v7:19.1.0'
compile 'commons-lang:commons-lang:2.6'
compile project(':volley')
}
再び、Gradleのビルドファイルを編集したのでSync(もしくはTry Again)をおしてみてください。ここでSyncが完了すると、アプリケーション本体のapp内のソースコードでvolleyを使うことができるようになります。
無事完了です。お疲れ様でした。
ちなみに…
非公式ではありますが、VolleyのミラーをCentral Repositoryにあげてくれている方がいますので、そちらを参照すれば、ApacheCommonsのように1行でライブラリのインポート作業が終了します(android-volley)。