= Android = ※Androidについてはネット上にいくらでも資料が見つかるので、ここではほぼ流れだけを記述していく。 基本的にEclipse上での開発を想定している。 == リンク == * [[http://developer.android.com/guide/developing/eclipse-adt.html|Developing in Eclipse, with ADT]] * [[http://sourceforge.jp/projects/android-docs-ja/|Androidドキュメント日本語翻訳プロジェクト]] == Android徹底批判 == * [[Android/Criticism|Android徹底批判]] == もろもろ == * [[Android/Development|開発環境ひとめぐり]] * [[Android/Views|AndroidのViewについて]] * [[Android/JUnit|テスト環境について]]  * [[Android/Principle|Androidアプリの開発方針]] * [[Android/Source|Androidソースの取得]] * [[Android/View_not_attached_to_window_manager|View not attached to window manager問題]] == 開発環境の使い方 == * [[Android/LogLevel|ログレベルとLogCat]] * [[Android/XmlPullParser|XmlPullParser]] * [[Android/Context|Context]] * [[Android/Activity|Activity]] * [[Android/Handler|Handler]] * [[Android/Dimension|Dimension]] * [[Android/ImageView|ImageView]] * [[Android/Matrix|Matrix]] == トラブル == * [[Android/Trouble|トラブル対策]] == インストール == 開発環境は以下のもの。 * eclipse + ADTプラグイン * Android SDK 以上二つは別ディレクトリになる。Android SDKは単にダウンロードして展開すればよい。 Eclipseは3.5を使う。2010/9現在、3.6で動作するのかどうなのか明確な記述が無い。 マニュアル通りにADTプラグインをインストールするが、その前にeclipseの既存のプラグインの更新を行っておいた方がよい。 どうもADTプラグインのインストール時に勝手にこれを行っているらしく、プラグインインストールの進捗がフリーズしたように見えてしまう。 Eclipseを起動させたら、ウインドウメニューの「Android SDK and AVD Manager」を選択し、 先のAndroid SDKを展開させたフォルダを指定する。要するに、Eclipse用プラグインだけでは何もできず、 Android SDKも必要ということ。 また、この画面の中で各種パッケージ(SDK Platform, Samples, Google API,など)をインストールしておく。 とても重要なことは、エミュレータ用のVirtual Deviceが一つも定義されていないこと。 とりあえず一つを適当に作成する。 NewボタンをクリックしNameを適当に選択し、Targetを適当に選択して「Create AVD」。 == Eclipseのプロジェクト作成とエミュレータ上での実行 == プロジェクト作成時は、Javaプロジェクトではなく、Android Projectを選択する。 このとき、「Create project from existing sample」を選択すれば、SDKに内蔵サンプルのプロジェクトが作成されるので、 それを適当にいじってみることができる。 ※1:ただしこの場合、eclipseのワークスペースには何も作成されない。SDK内蔵サンプルをワークスペースにコピーしてくるのではなく、ワークスペースからSDK内蔵サンプルを参照している状態になる。この状態でビルドすると、SDK内蔵サンプル(samples\android-?\サンプルフォルダ)の中に実行形式が作成されることになる。 ※2:New Android Projectのウィザードには、上記の「create project from existing sample」のほかに、「create project from existing source」という選択肢もあるが、いずれにしてもeclipseのワークスペースにソースがコピーされるわけでは無い。それらのソースは元の場所のまま、ワークスペース内にプロジェクトが作成されるに過ぎないことに注意。 ※3:サンプルソースをワークスペース内にコピーするには、まずワークスペース内に空のandoidプロジェクトを作成しておき、そこに「import」を行う必要があるようだ。eclispe上でこれ以外の方法は今のところ不明。そりゃ自分でソースをコピーしてくれば良い話ではあるが。 プロジェクトを右クリックし「Run As Android Application」を選択すると、エミュレータ画面が表示されてアプリケーションが実行される (通常のJavaプログラムの実行方法とは異なる)。 ただし、この実行には非力なマシンだとかなりの時間がかかる。 == Eclipse(+ADTプラグイン)とエミュレータの関係 == [[Android/Emulator|エミュレータについて]] == 実行形式はどこに? == androidの実行形式は.apkという拡張子のファイルだが、これは通常のeclipse-javaプロジェクトと同様にbinディレクトリ(eclipse-IDE上では見えない)に、.classファイルと共に作成される。 == 何がapkとしてまとめられるか? == apkとしてまとめられる実行形式には、そのプロジェジェクトのJavaソースをコンパイルした.classファイルだけではない。 以下もこのapkの中に格納さrている。 * ビルドパスのライブラリに指定されたjarファイル。 * ビルドパスの外部プロジェクトと指定されたプロジェクトのソースをコンパイルしたもの。 要するに、このプロジェクトを動作させるのに必要なものはすべて自動的にapkファイルに格納される。 これを確認する方法は(動作させてみればわかるのだが)、dexdumpを使用してapkに格納されるdexファイルを解析してみればよい。 ※dexdumpはSDKのtoolsディレクトリではなく、platforms\android-8\toolsなどに格納されている。 == ドキュメント == Eclipse上でDocumentation for Android SDKをダウンロードすると、Eclipse上でAPIドキュメントを閲覧できるとマニュアルにはあるが、やり方が一切不明。通常のEclipseのHelpビューアの目次にも表示されていない。 SDK自体に含まれるドキュメント(Windowsの場合)は「SDKインストールフォルダ\docs\offline.html」になる。 == サンプル == 先のプロジェクト作成時に選択できるサンプルは「SDKインストールフォルダ\samples\android-?」の下にあるものらしい。 サンプルの説明は、SDKの中だと「SDKインストールフォルダ\docs\resources\samples\index.html」であるが、 当然オンライン上にもある。 [[http://developer.android.com/resources/samples/index.html|List of Sample Apps]]がそれ。 ※オフラインのドキュメントには何の意味があるのか不明。 そのほか、サンプルを集めたサイトが[[http://code.google.com/p/apps-for-android/|apps-for-android]]。 == エミュレータのみを動作させる == 「ボス」に見せるのに、いちいちeclipseを操作してもらうのは大変である。 少なくとも、JavaとAndroid SDKがインストールされていれば、エミュレータを実行することができる (Javaもいらないという話もあり。androidは純正Java-VMで動作するわけではないので)。 * コマンドプロンプトを開く * cd SDKインストールフォルダ\tools * start emulator -avd eclipse上で作成したAVD名称 とする。 表示を日本語にするのは以下のとおり。 * 「Settings」のアイコンをクリック * スクロールして「Language & Keyboard」を選択 * 「Select Language」をクリックして、「日本語」を選択 Eclipseで開発し、Eclipseから起動してエミュレータ上で動作させたアプリは勝手にSDKインストールフォルダにインストールされているので、SDKインストールフォルダをzipして「ボス」に渡し、先の「start emulator云々」をやってもらえばOK。 。。。と思ったが、これはサンプルプロジェクトの場合だけかも。