AndroidのVolleyインストールでハマったのでメモ[Android Studio]
はじめに
AndroidでVolleyを使おうとして色々調べたのでメモ(理解が浅いので正しいのかは保証できないです).結構色んな所でハマりました.
2015/10/30 追記
最近Android触れてないんですが、今はもうRetrofitかOkHTTP使い分けるのが良いっぽいですね
ライブラリをインポートする方法
ライブラリのインストール方法は主に↓の3通りのパターン(ライブラリの管理がしやすそうな順にソート)がありそう。
Mavenへの参照を記述
MavenのデフォルトリポジトリであるThe Central Repositoryに、多くのAndroidのライブラリが登録されている。わざわざローカルにダウンロードしなくても、プロジェクトレベルのbuild.gradle(
app/build.gradle
)のdependenciesの中に設定を追加するだけで利用できる.かなりお手軽な方法だと思うけど、Volleyは登録されていないらしい.ちなみにMavenに登録されているライブラリはThe Central Repository Search Engine、もしくはmvnコマンドで検索できる。
gitのサブモジュールとして追加
トップレベルのディレクトリで
git submodule ~
してからbuild.gradleに記述.今回はこの方法でVolleyをインストールしてみた.jarファイルをダウンロード(もしくはソースコードからビルド)して、libsディレクトリの中に格納
2014/11/7追記
最近、Mavenから参照できるようになったそうです.やり方は簡単で、build.gradleのdependenciesに↓の1行を追加すればOKです.
compile 'com.mcxiaoke.volley:library:1.0.7'
追記すると、↓のような感じです.
dependencies { compile 'com.mcxiaoke.volley:library:1.0.7' compile fileTree(dir: 'libs', include: ['*.jar']) }
Volleyのインストール
基本的に↑の記事を参考にすすめてみました。詳しい説明は上記記事を参考に...
- gitのサブモジュールとしてvolleyを追加
$ pwd /Users/name/AndroidStudioProjects/VolleyApp $ git init $ git add . $ git commit -m "initial commit" $ git submodule add https://android.googlesource.com/platform/frameworks/volley modules/volley
- settings.gradleを書き換え
include ':app',':modules:volley'
- トップディレクトリの方のbuild.gradleに↓を追記
project(':modules:volley') { buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.12.2' } } }
gradleのバージョンは、使うときに最新のものを使っていない場合、Android Studioが教えてくれます。その時は最新のバージョンを指定。ここの指定を間違えるとThe project is using unsupported version of the Android Gradle plug-in
というエラーが発生した。
app/build.gradle
を書き換え
dependencies { compile project(':modules:volley') //←を追記 compile fileTree(dir: 'libs', include: ['*.jar']) }
以上で設定が終了。
エラーへの対処
設定が終わったので、動かしてみるとGradle SyncでFailed to sync Gradle projectというメッセージを受け取った。
failed to find Build Tools revision 19.0.0
Error: Cause: failed to find Build Tools revision 19.0.0 Install Build Tools and sync project
現在、SDK Managerを使ってBuild Toolsの20.0.0をインストールしていた。SDK Managerが19.0.0を使わないといけないのかなって思ったんだけど、結論からいうと各build.gradleのbuildToolsVersionを20.0.0にしたらいい。
android { compileSdkVersion 19 buildToolsVersion "20.0.0" //← ここのバージョンを変える
結局はインストールしているBuildToolsのバージョンとアプリ側でしているBuildToolsのバージョンが一緒になればいいらしい。
The SDK Build Tools revision(19.0.0) is too low for project ':modules:volley'. Minimum required is 19.1.0
Error: The SDK Build Tools revision(19.0.0) is too low for project ':modules:volley'. Minimum required is 19.1.0
Gradleのバージョンが古いと怒られているみたい。さっきトップディレクトリのbuild.gradleの設定でちゃんと最新バージョンを指定していたと思うので、ここでかなり時間がかかった。原因は、volleyライブラリの中のbuild.gradleの方で指定されているGradleのバージョンが古いことにあった。
modules/volley/build.gradle
を編集して
buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.12.2' // ← ここはIDEに薦められたバージョンを指定。 } } apply plugin: 'android-library' android { compileSdkVersion 19 buildToolsVersion = "20.0.0" // ←Build Toolsに合わせて指定 ...
これで動かしてみると無事に動きました。
その他参考記事
- 意外とつまづく、Android Studioでサンプルを開く
- Androidプロジェクトを新規作成してVolleyが使えるようになるまで
- 【Android】Android StudioプロジェクトにVolleyを組み込む
- 作者: 長嶋享,藤吾郎,八木俊広,日高一明,滝口健太郎,田中慎司,泉水翔吾,海野弘成,佐藤太一,吉村総一郎,伊藤直也,川上大喜,こしばとしあき,舘野祐一,中島聡,橋本翔,渡邊恵太,はまちや2,竹原,川添貴生,沢渡真雪,WEB+DB PRESS編集部
- 出版社/メーカー: 技術評論社
- 発売日: 2014/06/24
- メディア: 大型本
- この商品を含むブログ (1件) を見る