Android SDKの R21が出ているそうで見に行き、自動ダウンロードに従ったらこいつが落ちてきた。*1
400Mもあって、何が入っているんだ?と思ったら、Android用にカスタマイズされたっぽい eclipseと ADT&SDKの詰め合わせだった。*2
適当な場所へ展開したら、adt-bundle-windows/sdk/tools/と adt-bundle-windows/sdk/platform-tools/にパスを通し*3 、eclipseを起動して Window / Preference / Android / SDK Locationに adt-bundle-windows/sdkをフルパスで指定すれば最低限の設定は完了。*4
SDK Platformは 4.2の物*5 しか含まれていないので古いプラットフォーム向けは Android SDK Managerを起動*6 してダウンロードし直し。
R.java周りでまた何かいじったようね。
ライブラリのリソースを使うからライブラリの R.javaをインポートしていたのがエラーになっている感じ。
アプリケーションの R.javaをインポートするように修正。
2012/12/07追記
今まで使っていたワークスペースを開くと ADTのバージョンが古いとか言われちゃう。
作り直すのが無難か。
2012/12/08追記
sdk/platforms/下のディレクトリ名、今までは 「android」+APIレベルだったのが、APIレベル 17は「android-4.2」になってるのね。
命名規則を変えたのかしら?
2012/12/27追記
r21.0.1が含まれるバージョンには SDK Manager.exeが含まれているのね。
だがしかし、丸ごと入れ替えた結果、「Errors running builder ‘Android Pre Compiler’ on project ‘XXXX’」ってなエラーが出てビルドに失敗するようになってしまった。
ワークスペースを作り直してみても改善せず、仕方がないので元に戻す。
2013/01/22追記
前回丸ごと入れ替えたときはうまく動かなかったけど、SDK Managerから R21.0.1へ更新が出来るようになって、更新したら正常に動作するね。
SDK Manager.exeも入った。
2013/02/15追記
SDK Managerから ADT R21.1に更新したら、Eclipseから Platform SDKが見えなくなった。
プラグインのバージョン不一致云々言われるので更新チェックを指示しても更新無しで二進も三進も。
結局、adt-bundle-windows-x86_64.zipをダウンロードしなおしてそっくり入れ替えて回復。
「更新は常に丸ごと」が吉なのか?
2013/03/13追記
最近では「adt-bundle-windows-x86-20130219.zip」のようにアーカイブ名に日付が入るようになったのね。
2013/05/16追記
Google I/O 2013に合わせて ADT R22を含む adt-bundle-windows-x86-20130514.zip / adt-bundle-windows-x86_64-20130514.zipがダウンロードできるようになっている。
まぁ プラットフォームが追加されたわけではないので、I/Oで発表された Google Map APIの新盤などの追加がメインだろうね。
例によって丸ごと入れ替えて、API10の SDK Platformと Google USB Driverだけ追加インストール。
Stringリソースの取得時に期待している引数の数と渡しているが一致しているにもかかわらず lintが「android wrong argument count, format string XXX requires YYY but format call supplies ZZZ」というエラーを吐くのは修正されていた。
サポートライブラリが R13がなっていくつかの追加と修正が入っているようだけど、自分にはあまり関係ないかな。
今までは参照されるライブラリプロジェクトに android-support-v4.jarを突っ込んでおけば参照する側では特に何もする必要がなかったのだけど、明示する必要があるようになった模様。
で、アプリを動かしてみると…メインの Activityを起動する時に java.lang.ClassNotFoundExceptionが発生して起動しない…_no
ウィザードでスケルトンを作ってみると普通に起動するのでなにか間違ったことをやってしまっているのだろう。
原因を追求してみると、Eclipseにて Project-Properties-Java Build Path-Android Private Librariesにチェックが入っていないのが原因らしい。
LibA , LibB , Appと三つのプロジェクトがあり、LibBは LibAに、Appは LibAと LibBに依存している関係だけど、LibAのチェックを入れることで android-support-v4.jarの追加が LibAだけでよくなり、Appのチェックを入れることで起動時のエラーも出なくなった。
まぁ そういうことなんだと思う。
AVDが起動しないのは相変わらずなので調べてみたら、ANDROID_SDK_HOMEを設定すればよいことがわかった。
ところで、Google I/Oで発表された Android Studioも気になるので週末にいじってみよう。
2013/05/30追記
気がつけば adt-bundle-windows-x86-20130522.zip / adt-bundle-windows-x86_64-20130522.zipがいるね。
ADTが R22.01になっているそうで。
なんか、色遣いがさわやか系になってるけど、eclipse自体のバージョンは同じようなので ADTプラグインの方で何か変えたのかね。
20130514から丸ごと入れ替えても特に不具合はなさげ。*7
2013/07/24追記
今夜、Googleから何かしらの発表があると言うことなので SDKの更新を見に行ったら adt-bundle-windows-x86-20130717.zip / adt-bundle-windows-x86_64-20130717.zipがいるね。
ADTが R22.04になっているけど、大した変更は入ってなさそう。
20130522から丸ごと入れ替えて特に問題は出ていない。
SDK Platformは 4.2.2(17)が最新のままなので、4.3云々は表面上の変更にとどまるか、4.3自体が存在しないかかね?
2013/07/25追記
なんか、更新されてる。
アーカイブ自体はそのままで、SDK Managerによる更新で SDK Platformに 4.3(18)が追加され、Platform toolsと Support Libraryも rev. 18に。
個人的には Support Libraryに ActionBarが追加されたのが一番大きいか。
今までは 2.xを動作環境に含めるために活用してこなかったのがこれで変わるかも。
2013/07/29追記
SDK Managerを良く見ると、Google Cloud Messaging for Androidが Deprecatedになってるね。
GCMって Android Cloud to Device Messagingの代替でついこの間出てきたサービスじゃなかったっけか?
さらなる代替サービスが存在するの?
2013/08/02追記
adt-bundle-windows-x86-20130729.zip / adt-bundle-windows-x86_64-20130729.zipが上がってる。
ADT r22.0.5になったぐらい?
2013/08/04追記
「adt-bundle-windows-x86-20130729.zip 展開 パスワード」なんてキーワードで検索してくる人がいるけど、どこか変なところから落としてるんじゃないの?
ちゃんとハッシュ値が提示されているのだから、チェックしましょう。
件のアーカイブは Windows環境用なので、Microsoftが配布している純正アプリ(Availability and description of the File Checksum Integrity Verifier utility)とかどうよ?
2013/08/07追記
7/29に「なぜに Google Cloud Messaging for Androidが Deprecated?」と書いたけど、「Google Play Servicesに移動しました。単体バージョンはサポートされなくなりました」ってメッセージが書いてあったね。
2013/09/17追記
adt-bundle-windows-x86-20130911.zip / adt-bundle-windows-x86_64-20130911.zipが上がってる。
ADT r22.2になったぐらい?
なんか、eclipseが固まる頻度が格段に上がった?
2013/09/18追記
自分は 20130729に戻してしまったけど、20130911に含まれる ADT r22.2には問題があるようなので更新するなら注意を。
>Android SDKの最新版(22.2)に問題があるのでアップデートはご注意ください
昨日リリースされた、Android SDKの最新版(22.2)に問題があり、新しいプロジェクトやアクティビティが作れなくなっています。
バグ情報はこちらに登録されています。
https://code.google.com/p/android/issues/detail?id=60149アクティビティのテンプレートファイルに問題があるそうで、
https://code.google.com/p/android/issues/detail?id=60149#c55
からactivities.zip をダウンロードして
sdk/tools/templates/activities
の中身を入れ替えると、とりあえず回避できるようです。
2013/09/20追記
adt-bundle-windows-x86-20130917.zip / adt-bundle-windows-x86_64-20130917.zipが上がっている。
ADTが 22.2.1となって、テンプレートの問題が修正された模様。
2013/10/19追記
ふと思った。
検索のキーワードに使われる「パスワード」って「パスを通す」の「パス」を勘違いしている?
日本語にすれば一緒になってしまうけど、「pass」と「path」で異なる物なんだけど…
ただ、GUIしか知らない世代が初めて開発に触れると「パスってパスワードの事?」となる気もする。
まぁ 「解凍」「展開」というキーワードを絡めているのも多いから、単純に何かこちらのあずかり知らぬ事情があるだけかもね。
2013/11/01追記
adt-bundle-windows-x86-20131030.zip / adt-bundle-windows-x86_64-20131030.zipが上がってる。
Android 4.4(API level19)への対応がメインかね。
Support Libraryも更新されていて、v7.appcompatはごっそり手が入っている感じ。
2014/01/08追記
いつのバージョンからなのかわからないけど、「メニューリソースに書かれたテキストリソースが存在しない」等の aapt.exeが落ちる状態がエラーとして表示されなくなったよね。
結果、R.javaが生成されなくて参照している箇所が軒並みエラーになる。
この状態になると原因がさっぱり不明で頭を抱えることになるので早く直して欲しいところ。
2014/04/01追記
半年ぶりに adt-bundle-windows-x86-20140321.zip / adt-bundle-windows-x86_64-20140321.zipが出てきたな。
サポートライブラリに SwipeRefreshLayoutが追加されたぐらい?
2014/06/27追記
Google IO終わったので見に行ったら adt-bundle-windows-x86-20140624.zip / adt-bundle-windows-x86_64-20140624.zipがいた。
Android 4.4W(API 20)と Android L(API 20 , L preview)*8 ってのが登場し、Support Libraryが 20になっている。
4.4Wは Android Wear、Lってのは Lolipopと呼ばれているバージョンのプレビュー版か。
SDKに含まれるプラットフォーム名は「Android-L」となっているけど、Lが正式公開されたとき 21になるんだろうか?
Support Library R20に関しては Wear周りの追加がメインだね。
で、長らくアルファ扱いだった Android Studioがベータになってた。
2014/08/16追記
気がつけば adt-bundle-windows-x86-20140702.zip / adt-bundle-windows-x86_64-20140702.zipが出ていた。
20140624から何が変わったのかはよくわからない。
eclipseのアイコンとか変わった気がするけどね。
2014/10/18追記
新規パッケージではまだだけど、インストール済みのパッケージから更新をかけると 5.0(API 21)の諸々が落ちてきますな。*9 *10 *11
Support Libraryも 21になって、 material design周り等が追加されているね。*12
手持ちの Nexus7(2012)にも 5.0への更新が降ってくるという話*13 なので来月には 5.0をいじくれるかな?
2014/10/22追記
Android Build-toolsが 21.0.2になってとりあえず落ち着いたかな。
2014/11/01追記
Support Libraryが 21.0.1になって、RecyclerViewの挙動が改善された模様。
2014/12/09追記
最近、adt-bundle-*の更新がないなぁと思っていたら、Android Studioが正式版になって取って代わったようね。
android-studio-bundle-135.1629389.exeがダウンロードできるようになってる。
2015/01/02追記
現在は android-studio-bundle-135.1641136.exeをダウンロードするように勧められる。
Google的には「今後、Android Studioをメインに進めていくので可及的速やかに移行するように」というスタンスらしい。
正月休みを利用して Eclipseからの移行を試みているけど、かなり苦痛。
Eclipseを使った開発が切り捨てられるのは先だろうけど、最新環境の反映などは確実に Android Studioが先に行われるだろうから、何とか乗り越えないと。
2015/03/11追記
先日 5.1のファクトリイメージが公開されたのに合わせてか、5.1の SDK(API22)が出てるね。
自アプリで使っている範囲では org.apache.http以下が軒並み Deprecated指定され、URLConnectionを使うように指示されているな。
Resources.getDrawable(int id)が Resources.getDrawable(int, Theme)を使うようになっていたり。
前者はともかく、後者はまた呼び分けが増えるのか…
2015/03/16追記
先週末当たりから Support Libraryの 22が出ているようだけど、例によって地雷がすごいという話。
進んで地雷を踏んでくれる人に敬意を払いつつ、自分は様子見。
2015/04/21追記
Support Library 22.1が出てるので入れ替えてみたら…ActionBarActivityが Deprecated指定されている(-o-)
android.support.v7.app.AppCompatActivityを使えと言うことに。
テーマやダイアログのカスタマイズなど ActionBarActivityでサポートされていなかった部分が AppCompatActivityでサポートされるようになったっぽく。
単純な置き換えで動いている模様。
2015/04/25追記
AppCompatButtonとか試していたら、あっという間に 22.1.1が出てきた。
まぁ バグフィックスだけだろうからとっとと導入してしまう。
2015/05/29追記
Google IO 2015にて Android Mが発表されたのに伴って API22 MNC previewが出てきたね。
Support Libraryが 22.2と微妙なバージョンアップ。
新たに追加された Design Support libraryってのが便利そうなんだけど、情報少ないなぁ
2015/07/18追記
2015年一杯で Eclipse+ADTのサポートは切られるそうなんで、Android Studioに移行する必要有り。
自分も半年くらいかけて行ったり来たりした結果、何とか移行完了。
いろいろと細かいバグが報告されていた Support Libraryの 22.2.0が 22.2.1に更新されてる。
早くもおかしい点がいくつか報告されている…のはいつものことか。
しばらくしたら 22.2.2が出て収束してくれるのかな?
2015/08/18追記
いよいよ Lollipopの次のバージョンが 6.0(marshmallow/マシュマロ)に決まって SDKも最終プレビュー版になった模様。
Support Libraryが 23になったらしいのだけど、単独の配布が見あたらず。
gradleで最新を設定してみても 22.2.1しか使われない。
いくつか新しいコンポーネントは 23としてでてきたけど*14 、既存のコンポーネントは 22.2.1とか?
それはそれでかまわないのだけど、targetSdkVersionを 23に設定すると 22系のライブラリを指定している箇所で「23のライブラリを使えよ」ってな警告が出るのがウザイ。
どうやら、公開プロセスに問題があるっぽく、少し様子見か。< Issue 183092: This support library should not use a lower version (22) than the targetSdkVersion (23)
その後、半日ほどおいたら 23が落とせるようになりましたな。
で、手持ちのアプリの API23対応を始めたわけだけど…android.support.v4.app.Fragment.onAttach(Activity activity)が Deprecated指定*15 とかいつもに増して壮大な変更が入ってないか?
*1 ちなみに 64bit環境だと adt-bundle-windows-x86_64.zipが落ちてくる。
*2 DOWNLOAD FOR OTHER PLATFORMSからリンクをたどれば SDK単体でのダウンロードも可能。
*3 開発が IDEで完結する人には不要なのかな?
*4 どういう条件なのか、SDKのパスが最初から入力されている環境もある。
*5 その時点での最新の物だけが含まれるらしい。
*6 adt-bundle-windows/sdk/tools/android.batを実行するか、eclipseのメニューから Window – Android SDK Managerを選択。
*7 バージョン番号からも変更内容からも小さなバグフィックス版なのであったら困るわけだが。
*8 バンドル版には前者が含まれていて、後者を使ってビルドするにはターゲット SDKを変更したうえで android:minSdkVersionに “L”を指定する必要がある模様。
*9 Android SDK Build-toolsの 21があるけど、20から更新したらビルドできないようになったので 20に戻した。
*10 すぐに Android SDK Build-tools 21.0.1ってのが出てきて、コレに更新することで大丈夫になった。
*11 21.0.1は eclipse上でのビルドは通るのだけど antを使ったときにクラッシュ(-1073741819=0xC0000005)する。APPT from v21.0.0 failed on project build#76にて「試してみて」とポストされている aapt.exeを 21.0.1に上書きすることで問題は解消したので直に 21.0.2辺りが出てくるかと。
*12 android-support-v7-appcompatを更新するとアクションバー周りがガラッと変わってしまうので情報が出そろうまでは更新しない方が良いかも。
*13 2012/10発売なので、この更新が最後かなぁ
*14 com.android.support:preference-v7:23.0.0 , com.android.support:preference-v14:23.0.0 , com.android.support:preference-v17:23.0.0 , com.android.support:customtabs:23.0.0 , com.android.support:percent:23.0.0 , com.android.support:app.recommendation-app:23.0.0
*15 onAttach (Context context)を使うよう奨励されているな
Android Studio
Android Studioよりインストーラをダウンロードして実行。 環境変数 …