Eclipse IDE with built-in ADT で Android 4.2 開発環境を構築する

<更新履歴>
2013年4月22日 – 《9 Android SDK Managerでコンポーネントを追加する》 にあった 「Google USB Driver」関係の記述を Android Google USBドライバ に切り出して分けました。
2013年2月5日 – Java SE 6 Update 39 バージョンアップに伴い、記述を修正しました。
2013年1月11日 – 《9 Android SDK Managerでコンポーネントを追加する》 にあった 「Google APIs」関係の記述を Androidアプリの署名<KeyStore Keytool AndroidDebugKey> に切り出して分けました。
2012年12月29日 – Java SE 6 バージョンアップ(参考サイト:Oracle Blogs 日本語のまとめ-Java SE Updates)に伴い、 Java SE Development Kit 6 Update 37 →  Java SE Development Kit 6 Update 38 、jdk-6u37-windows-i586.exe → jdk-6u38-windows-i586.exe 、jdk1.6.0_37 → jdk1.6.0_38 といったように記述を修正しました。


2012年11月13日 Android 4.2(Jelly Bean)がリリースされ、Android SDKがアップデートされました。参考サイトを以下に記します。

Android 4.2採用のスマートフォン「Nexus 4」、タブレット「Nexus 10」、32GB「Nexus 7」とスマホやタブレットがそろってきたこともあり、Android4.2 アプリ開発環境を導入しようと思います。

オープンソース(ソースコードが公開されているソフトウェア)のIDE (Integrated Development Environment:統合開発環境)であるEclipse(エクリプス)にADT(Android Development Tools:アンドロイド開発ツール群)をバンドルした「SDK ADT Bundle」(Eclipse IDE with built-in ADT)が、Android Developerのサイト下の[About Android] [Get the SDK] [Open Source] [Support] [Legal] の [Get the SDK] をクリックすると次のように確認できます。

With a single download, the ADT Bundle includes everything you need to begin developing apps:(たったひとつダウンロードするだけで、ADTバンドル版は、アプリ開発を始めるために必要なすべてのものが含まれています。)

  • Eclipse + ADT plugin (→ Eclipse 3.8 + ADT 21.0.0)
  • Android SDK Tools (→ Android SDK r21)
  • Android Platform-tools
  • The latest Android platform (→ Android 4.2 プラットフォーム)
  • The latest Android system image for the emulator (最新のエミュレータ用のAndroidシステムイメージ)

インストールしてからEclipse メニューの「ヘルプ」→「ADT について」をクリックして得た情報によると「This product includes Eclipse Platform, JDT, CDT, EMF, GEF and WTP」となっており、「Eclipse Platform」は「Version: 3.8.0.v20120607-071945-9gF7jI7nG5qByXMVdkhRMWBQlF4PnDCLybDCPQ」です。

なお、このEclipseは、JRE(Java SE Runtime Environment:Java 実行環境)もJDK(Java SE Development Kit:Java開発キット)も内蔵していません。EclipseはJavaアプリケーションなので、JREもJDKもインストールされていない環境で起動しようとすると、「A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be available in order to run Eclipse. No Java virtual machine was found after searching the following locations: C:adt-bundle-windows-x86eclipsejrebinjavaw.exe javaw.exe in your current PATH」とエラーになります。JDKをインストールするようにします。

また、日本語化がされていません。

今まで、

とWindowsVista32ビットオペレーティングシステム上でAndroid開発環境を構築しましたが、今回はADTバンドル版を日本語化して、Android開発環境を構築してみます。

《事前事項1 漢字などの全角文字を含まないユーザー名でログインする》

漢字などの全角文字を含んだユーザー名でログインして環境を構築していくと、パスを認識してくれない不具合で、Android仮想端末(エミュレータ)を作成するときにエラーになります。漢字ユーザー名のまま作業した場合面倒になるのでおすすめしません。参考サイトを以下に記します。

《事前事項2 ファイルの拡張子が表示されるよう設定する》

Windows標準設定のままでは、ピリオド(.)以降の拡張子が表示されません。圧縮ファイルは「xxxxx.zip」、実行ファイルは「xxxxx.exe」というように、拡張子が表示されるほうがファイルタイプが判別しやすくなります。(参考サイト:ファイルの拡張子を表示するには?

  1. 「Windows」キーを押しながら「E」キーを押してエクスプローラを起動します。
  2. 「Alt」キーを押しながら「T」キーを押して、「フォルダオプション」をクリックします。
  3. 「表示」タブをクリックし「詳細設定」リストの中の「登録されている拡張子は表示しない」のチェックをはずし、「OK」ボタンをクリックします。

《事前事項3 本番用keystoreをバックアップしてから「.android」フォルダを削除する》

Android SDK Tools をインストールすると、「.android」フォルダが作成されます。「.android」フォルダには、Android SDK Tools のインストール先や、エミュレータの設定などの情報が保管されます。以前にAndroid SDK Tools をインストールしたことがあり、「.android」フォルダが存在する場合は、Eclipse 起動時に、「Android開発へようこそ」画面にならず、この先の説明と動きが異なります。Eclipseは一台のパソコンに複数存在させることが可能ですが、以前のAndroid環境導入済みのEclipseを残したまま、改めてEclipseをインストールして別のAndroid開発環境を構築しようとしても、AVD情報などは同一の「.android」フォルダを共有するので、「Android開発へようこそ」画面になりません。

デフォルトの「.android」フォルダの場所はWindowsのバージョンによって異なります。
Windows XP → C:Documents and Settings<user-name>.android
Windows Vista/7 → C:User<user-name>.android
になります。<user-name>はユーザー名(ログイン名)になります。

以前に独自設定をしている場合は上記以外の場所に「.android」フォルダがあることもあります。参考サイトを以下に記します。

注意点として、Google Play にアプリをリリース済みで本番用のkeystore(証明書)を作成していた場合、紛失するとGoogle Play に出したアプリをアップデートできなくなります。「.android」フォルダ内に本番用のkeystoreを作成していた場合は、「.android」フォルダを削除する前に退避します。Google Play にまだアプリを出していなければ、意識する必要はありません。参考サイトを以下に記します。

《事前事項4 以前のEclipseを削除するならworkspaceの場所を確認する》

プログラムソースを保存しているworkspaceがEclipseのインストールフォルダ内にある場合、以前のEclipseフォルダを削除するとプログラムソースが失われてしまうので注意が必要です。必要ならworkspaceをバックアップ(別の場所に保存)してください。

《1 JDKをインストール》

Androidアプリ開発システム要件に沿うよう、JDK6をインストールします。JREのみやJDK5、JDK7では要件を満たしません。JDKのインストール先のフォルダは、このサイトではデフォルトのままとしますが、複数の環境を切り替えたい場合は参考サイトを参照してください。(参考サイト:ローカルのJava環境の管理について

  1. Java SE Downloadsサイトを開くと、最初にJavaSE7が目に入りますが、下へスクロールして、Java SE 6 Update 39 の JDK の「DOWNLOAD」をクリックします。
  2. Java SE Development Kit 6 Update 39 の 「Accept License Agreement」にチェックを入れます。
  3. 「Windows x86」と表示されている行のものが32ビットオペレーティングシステム用、「Windows x64」と表示されている行のものが64ビットオペレーティングシステム用です。32ビット用として「jdk-6u39-windows-i586.exe」をクリックし、ダウンロードします。
  4. ダウンロードフォルダを開き、「jdk-6u39-windows-i586.exe」をダブルクリックして起動します。(ブラウザの設定によってはダウンロード後自動起動する場合もあります。)
  5. 「ユーザーアカウント制御」画面が開き、プログラムを続行する許可を求められるので、「続行」をクリックします。
  6. 「Java(TM)SE Development Kit 6 Update 39 - セットアップ」画面が開くので、「次へ」をクリックします。
  7. 「カスタムセットアップ」画面になり、「開発ツール」・「ソースコード」・「公開JRE」・「JavaDB」が表示されます。(「公開JRE」は、公開JREがインストール済みの場合、表示されません。「JavaDB」は、JDK7のインストール時の場合、表示されません。) Java開発には、最低限でも「開発ツール」をインストールする必要があります。「ソースコード」は、インストールしない場合、デバッグ時にJavaのclassライブラリにステップインしたときに「ソースコードが見つかりませんでした。」と表示され、不便が生じます。「公開JRE」と「JavaDB」はJava開発に必須のものではありません。そこで、「開発ツール」・「ソースコード」のみインストールすることとし、「公開JRE」・「JavaDB」は、行頭のドライブアイコンを左クリックし、「この機能を使用できないようにします。」を選択し、インストール対象から除外します。(必ず除外しなければならないというわけではなく、インストールしても差し支えはありません。) 「次へ」をクリックします。
  8. 「Java(TM)SE Development Kit 6 Update 39 - 進捗」画面を経て、「Java(TM)SE Development Kit 6 Update 39 - 完了」画面になります。「完了」をクリックします。
  9. ブラウザが起動し「Java Development Kit (JDK) Registration」画面が開き、利用者登録を促されますが、しなくてもJavaは使用できるので、ブラウザ画面を閉じます。

公開JREについては、EclipseとJREとJDKを参考にして下さい。
JavaDB(参考サイト:Java DBJavaDBの使い方JavaDBメモ

《2 パスをとおす(システム環境変数JAVA_HOMEとPathの設定)》

コマンドプロンプト利用のAndroidアプリ開発環境を構築するにも書いたのですが、間違ってシステム環境変数「Path」の変数値を消してしまうと復旧は困難です。パスをとおす作業が不安な場合は、手順の下に記した※補足1※※補足2※を先に見てください。

  1. 「Windows」キーを押しながら「Pause」キーを押して(またはWindows画面左下の「スタートメニュー」→「コンピュータ」右クリック→「プロパティ」をクリックして)「システム」画面を開き、左側の表示上から4つ目の「システム詳細設定」をクリックします。
  2. 「ユーザーアカウント制御」画面が開いたら「続行」をクリックします。
  3. 「システムのプロパティ」画面が開いたら、詳細設定タブの「環境変数」をクリックします。
  4. 「環境変数」画面が開いたら、システム環境変数の「新規」ボタンをクリックします。
  5. 「新しいシステム変数」画面が開いたら、変数名に「JAVA_HOME」、変数値に「C:Program FilesJavajdk1.6.0_39」と入力し、「OK」をクリックします。”Program”と”Files”の間に半角空白がありますが 「”C:Program FilesJavajdk1.6.0_39″」とダブルクォーテーションで括る必要はありません。(既にシステム環境変数に「JAVA_HOME」が存在する場合は、「JAVA_HOME」をダブルクリックし、変数値を「C:Program FilesJavajdk1.6.0_39」に置き換え、「OK」をクリックします。)
  6. 次に、システム環境変数「Path」(大文字小文字は無視されるので「PATH」あるいは「path」となっているかもしれません。)をダブルクリックします。「システム変数の編集」画面が開き、変数名欄が「Path」で表示されたら、変数値欄をクリックし、左矢印キーで確実に入力値の文字列先頭まで移動し、文字列先頭に「%JAVA_HOME%bin;」を追記します。セミコロン(;)は複数の値を設定する場合の区切り文字なので、忘れずに記述します。「%bin;」の「」も忘れやすいので注意します。
  7. コマンドプロンプトも利用してAndroidアプリケーションを開発する場合は、右矢印キーで確実に入力値の文字列末尾まで移動し、システム環境変数「Path」の変数値の最後に「;C:adt-bundle-windows-x86sdktools;C:adt-bundle-windows-x86sdkplatform-tools(この後の作業のSDKをインストールの手順どおりに、解凍作業で、「ファイルを下のファルダヘ展開する」欄を「C:」とする場合の設定になります)を追記します。EclipseだけでAndroidアプリケーションを開発するなら設定は不要です。
  8. 上記作業の結果として、「Path」の変数値は、Eclipseだけで開発するなら 「%JAVA_HOME%bin; [元々の「Path」の変数値]」となります。コマンドプロンプトも利用して開発する場合は、 「%JAVA_HOME%bin; [元々の「Path」の変数値] ;C:adt-bundle-windows-x86sdktools;C:adt-bundle-windows-x86sdkplatform-tools」となります。最初は「%JAVA_HOME%bin; [元々の「Path」の変数値]」だけとして、コマンドプロンプトも利用したくなってから「 ;C:adt-bundle-windows-x86sdktools;C:adt-bundle-windows-x86sdkplatform-tools」の部分を追記としてもよいでしょう。入力できたら「OK」をクリックします。
  9. 「環境変数」画面で「OK」をクリックし、「システムのプロパティ」画面で「OK」をクリックして設定を反映します。

コマンドプロンプトでの開発の参考サイトを以下に記します。

間違ってシステム環境変数「Path」の元々の変数値を消してしまった場合の参考サイトを以下に記します。

※補足1※

編集する前に「コマンドプロンプト」画面で「path > pathsave.txt」と入力して、元々の値の情報を「pathsave.txt」(ファイル名は任意)に保存しておくと万一の場合のバックアップがあり安全です。

「コマンドプロンプト」画面を開くには、「Windows」キーを押しながら「R」キーを押して「ファイル名を指定して実行」画面を開き、名前欄に「cmd」と入力し、「OK」をクリックします。(参考サイト:意外に簡単! 使って便利! コマンド環境“超”入門

「コマンドプロンプト」画面に「path」とだけ入力すると、現在の「path」の変数値が画面に出力されます。通常、コマンドの実行結果は標準出力と呼ばれるデバイスへ出力され、デフォルトでは標準出力は画面に設定されています。「path > pathsave.txt」は、リダイレクトという仕組みを用いて、標準出力内容をファイルに出力するよう指定しています。「path」コマンドの結果を「pathsave.txt」という名前のファイルに書き出して残しておくという指示をしたことになり、Windows Vistaの場合、「C:User<user-name>(<user-name>はユーザー名)」フォルダに、「pathsave.txt」ファイルが作成されます。(参考サイト:炎のコマンドプロンプト入門-コマンドプロンプト活用

保存された「pathsave.txt」ファイルの内容を確認するには、「コマンドプロンプト」画面で「type pathsave.txt」と入力します。(参考サイト:炎のコマンドプロンプト入門-ファイル内容の表示

保存された「pathsave.txt」ファイルをメモ帳で開くには、「コマンドプロンプト」画面で「notepad pathsave.txt」と入力します。「Ctrl」キーを押しながら「A」キーを押して文字列を全選択して、「Ctrl」キーを押しながら「C」キーを押すことで、以前の設定をクリップボードにコピーできます。(参考サイト:コマンドラインの基礎を学ぶ コマンドプロンプト編 ファイル操作)

WindowsVista以降は「コマンドプロンプト」画面で「path | clip」とすれば、直ちにクリップボードにコピーできます。(参考サイト:Windowsのコマンドプロンプトを便利に使うための10のミニテクニック)

設定にツールを利用する方法もあります。(参考サイト:eve(Environment Variable Editor)

※補足2※

実はパスをとおす作業をしなくてもEclipseを起動する方法があります。既存の環境を変えたくない場合などは、一考の余地ありです。

<方法1>Eclipse実行ファイルの「eclipse.exe」と同じ階層の「jre」フォルダにJREがあると、Eclipseの起動にこちらが優先して使用され、環境変数「Path」でJava(JREやJDK)のパスが設定されていたとしても、そちらは使用されません。日本語 Eclipse 3.7 Pleiades All in One Java はこのタイプです。具体的には「C:Program FilesJavajdk1.6.0_39jre」フォルダを、「C:adt-bundle-windows-x86eclipse」へコピーすることで実現できます。(参考サイト:【Java】JREだけ欲しい(実行環境だけ)

<方法2>Eclipseのショートカットに起動オプション「-vm」を設定して、起動に利用するJavaを明示する方法があります。(参考サイト:Eclipse3.0.1 起動オプションEclipse メモ

<方法3>Eclipseの設定ファイル「eclipse.ini」に「-vm」を設定して、起動に利用するJavaを明示する方法があります。(参考サイト:Eclipse 起動時に使用する Java VM を指定するEclipseの起動エラー(JVM terminated. Exit code=-1)、eclipse.ini

<方法4>バッチファイルを利用する方法があります。(参考サイト:EclipseでのAndroidアプリ開発を快適にする設定 Windows編環境変数JAVA_HOMEを変更して使用するJDKを切り替える

《3 パスの設定の確認》

パスをとおす前から開いたままの「コマンドプロンプト」画面には、新しい設定結果は反映されないので、確認するには新たに「コマンドプロンプト」画面を開く必要があります。(参考サイト:コマンド プロンプト: よく寄せられる質問

  1. 「Windows」キーを押しながら「R」キーを押して「ファイル名を指定して実行」画面を開き、名前欄に「cmd」と入力し、「OK」をクリックし、「コマンドプロンプト」画面を開きます。
  2. 「コマンドプロンプト」画面で、「echo %JAVA_HOME%」と入力します。「C:Program FilesJavajdk1.6.0_39」と表示されることを確認します。
  3. 「コマンドプロンプト」画面で、「java -version」と入力します。「java version “1.6.0_39″」と表示されることを確認します。「’java’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。」と表示され、「C:Program FilesJavajdk1.6.0_39binjava -version」ならバージョンが表示される場合は、「Path」の変数値の「%JAVA_HOME%bin; 」の部分に誤まりがあります。
  4. 「コマンドプロンプト」画面で、「javac -version」と入力します。「javac 1.6.0_39」と表示されることを確認します。「’javac’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。」と表示され、「C:Program FilesJavajdk1.6.0_39binjavac -version」ならバージョンが表示される場合は、「Path」の変数値の「%JAVA_HOME%bin; 」の部分に誤まりがあります。
  5. 「コマンドプロンプト」画面を閉じるには、「exit」と入力するか、通常のWindowsプログラム同様に画面右上角の「×」をクリックします。

期待の表示にならない場合は、「コマンドプロンプト」画面で、「path」あるいは「set」と入力します。環境変数の設定が表示されるので、意図した設定になっているかを確認します。

Windows Vista以降にある「where」コマンドは実行ファイルの検索ができます。(参考サイト:whereコマンドでファイルを探す) 「コマンドプロンプト」画面で「where java」、「where javac」とコマンドを入力すれば、「Path」に設定されているJavaのパスをチェックすることができます。パスが存在しない場合は「情報: 与えられたパターンのファイルが見つかりませんでした。」と表示されます。両コマンドとも1件もヒットしない場合は、公開JREはインストールされておらず、JDKのパスの設定に失敗していることになります。

以下は次のステップのSDKをインストールの完了後に確認できます。Eclipseだけで開発するなら確認は不要です。

  1. 「コマンドプロンプト」画面で、「emulator -version」と入力します。「Android emulator version 21.0 (build_id OPENMASTER-519525)」 「Android emulator version 21.0.1.0 (build_id OPENMASTER-543035)」(バージョンナンバーは適宜読み替え)と表示されることを確認します。「’emulator’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。」と表示され、「C:adt-bundle-windows-x86sdktoolsemulator -version」ならバージョンが表示される場合は、「Path」の変数値での「tools」フォルダのパス指定部分に誤まりがあります。
  2. (emulatorのバージョン表示が出たままの場合は一旦「Enter」キーを押してから)「コマンドプロンプト」画面で、「adb version」と入力します。「Android Debug Bridge version 1.0.31」(バージョンナンバーは適宜読み替え)と表示されることを確認します。「’adb’は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません。」と表示され、「C:adt-bundle-windows-x86sdkplatform-toolsadb version」ならバージョンが表示される場合は、「Path」の変数値での「platform-tools」フォルダのパス指定部分に誤まりがあります。

《4 SDK(Software Development Kit:ソフトウエア開発キット)をインストール》

SDKはZIPファイル形式で圧縮されているので、ダウンロードしてから解凍する必要があります。解凍には、Windows展開ウィザードを利用します。Eclipse起動時エラーの傾向と対策に示したように、Windows展開ウィザード以外の解凍ツールを利用すると、解凍に失敗する可能性があります。解凍に失敗すると、起動しようとしても、「An error has occured. See the log file (XXXX)¥eclipse:¥configuration¥(起動時のエポック秒).log」とメッセージが表示され起動できません。

SDKの解凍先は、「Program Files」フォルダ配下は避けるのが無難です。260文字を超える長いパス名となる可能性が増し、超えた場合に解凍に失敗することと、解凍できた場合でも、管理者権限なしでプラグインのインストールなどをしようとすると更新に失敗するからです。(参考サイト:Android SDKでライブラリのインストールが拒否される。

  1. Get the Android SDK の「Download the SDK ADT Bundle for Windows」をクリックします。
  2. 「Before installing the Android SDK, you must agree to the following terms and conditions.(Android SDKをインストールする前に、以下の契約条件に同意する必要があります。)」と画面がかわったら、「I have read and agree with the above terms and conditions(私は上記の条件を読んで同意しました)」にチェックをいれ、「32-bit」にチェックをいれ、「Download the SDK ADT Bundle for Windows」をクリックし、「adt-bundle-windows-x86.zip」をダウンロードします。(「64-bit」にチェックをいれた場合は、「adt-bundle-windows-x86_64.zip」がダウンロードされます。この場合JAVAも64ビット版の「jdk-6u39-windows-x64.exe」をダウンロードしておく必要があります。)
  3. 「adt-bundle-windows-x86.zip」を右クリックし、「すべて展開」をクリックします。
  4. 「圧縮(ZIP形式)フォルダの展開」画面が開いたら、「ファイルを下のファルダヘ展開する」欄を「C:」にします。
  5. 「完了時に展開されたファイルを表示する」にチェックを入れたまま「展開」をクリックします。展開が終了すると、展開先のローカルディスク「C:」が表示され、「adt-bundle-windows-x86」フォルダが作成されていることを確認できます。

SDKは、「SDK ADT Bundle」(Eclipse IDE with built-in ADT)と表現されるように Eclipse に ADT プラグインをインストールしたものになります。これ以降は Eclipse として記述します。

《5 Eclipseの日本語化》

Eclipseを日本語化しないなら、「C:adt-bundle-windows-x86」フォルダをダブルクリック→「eclipse」フォルダをダブルクリック→「eclipse.exe」をダブルクリックで、Android開発環境を備えた英語版のEclipseが起動しますが、日本語化するなら、Eclipse日本語化プラグインのPleiadesをインストールします。(参考サイト:PleiadesEclipse 3.x

これまでは「pleiades.zip」展開後の「readme」フォルダの「readme_pleiades.txt」 に従って plugins フォルダに配置していましたが、 今回は dropins フォルダに 配置してみます。(参考サイト:[Eclipse]p2のdropinsフォルダ

  1. MergeDoc ProjectのPleiades プラグイン・ダウンロードの最新版 1.3.5 をクリックして「pleiades.zip」をダウンロードします。
  2. ダウンロードした「pleiades.zip」を右クリックし、「すべて展開」をクリックします。
  3. 「圧縮(ZIP形式)フォルダの展開」画面が開いたら、「ファイルを下のファルダヘ展開する」欄を「C:adt-bundle-windows-x86eclipsedropinspleiadeseclipse」にします。
  4. 「完了時に展開されたファイルを表示する」にチェックを入れたまま「展開」をクリックします。
  5. 展開が終了すると「ファイルエクスプローラ」画面が開き、アドレス欄に「コンピューター>ローカルディスク(C:)>adt-bundle-windows-x86>eclipse>dropins>pleiades>eclipse」と表示があるので、「adt-bundle-windows-x86」の次のほうの「eclipse」をクリックします。
  6. 「C:adt-bundle-windows-x86eclipse」フォルダが開くので「eclipse.ini」ファイルを右クリック→「プログラムから開く」→「ワードパッド」をクリックします。「eclipse.ini」ファイルは、メモ帳で開くと1行で表示されてしまうので、ワードパッドを利用します。メモ帳で開くと改行されないのは、「eclipse.ini」ファイルの改行コードがCRになっていることが関係しています。参考サイトを以下に記します。
  7. 「eclipse.ini」ファイル最終行の下に「-javaagent:dropins/pleiades/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar=default.splash」の記述を追加します。文末に「=default.splash」を記述するかしないかで起動スプラッシュ画面が変わります。記述するとADTオリジナル版に、記述しないとPleiades版になります。(参考サイト:ADT Bundleのかっこいいスプラッシュ画面が表示されなくなった
  8. ワードパッドメニューの「ファイル」→「ワードパッドの終了」をクリックします。
  9. 「C:adt-bundle-windows-x86eclipseeclipse.ini への変更内容を保存しますか?」と問われるので、「保存する」をクリックします。

ワードパッドで編集すると改行コードがCR/LFになって保存されます。次回からはメモ帳で開いても適切に改行して表示されます。

私は、「eclipse.ini」ファイルの編集にサクラエディタを使用しています。「eclipse.ini」ファイルには漢字が使用されておらず半角文字だけなので、UTF-8(BOMなし)とShift_JISには内容に違いがありません。そこで初めて開くときはファイル形式がSJISとして表示されます。保存時に一度UTF-8で保存すると、次回からはUTF-8で開くか聞いてくるようになります。参考サイトを以下に記します。

ホバー表示の日本語化もしたい場合は、もうひと手間必要です。(参考サイト:Eclipse入門: 日本語APIドキュメントをローカル環境、及び、ホバー表示で使用する。Eclipseのホバー表示を日本語にしたいです。

《6 Eclipse 起動ショートカットの作成》

Eclipse は、起動を速くするためにプラグイン情報をキャッシュしますが、プラグインを更新したときは、キャッシュをクリアして起動する必要があるので、キャッシュをクリアする起動オプションを付与したショートカットをデスクトップに作成しておくと便利です。通常起動用と、クリーン起動用のショートカットを作成します。参考サイトを以下に記します。

  1. 「C:adt-bundle-windows-x86eclipse」フォルダの「eclipse.exe」を右クリックし、「プロパティ」をクリックします。(または「eclipse.exe」をクリックし、「Alt」キーを押しながら「Enter」キーを押します)
  2. 「全般」タブのセキュリティの「ブロックの解除」をクリックし、「OK」をクリックします。
  3. 「eclipse.exe」を右クリック→送る→デスクトップ(ショートカットを作成)をクリックします。デスクトップに「eclipse.exe – ショートカット」が作成されるので、今後通常起動用として利用します。
  4. デスクトップにできた「eclipse.exe – ショートカット」を右クリックし、「プロパティ」をクリックします。(または「eclipse.exe – ショートカット」をクリックし、「Alt」キーを押しながら「Enter」キーを押します)
  5. 「ショートカット」タブのリンク先欄に「 -showlocation」(-showlocation’の前に半角空白文字必要)を追記します。結果「C:adt-bundle-windows-x86eclipseeclipse.exe -showlocation」と記述します。「-showlocation」オプションを指定すると、ADTのタイトルバーにワークスペースのパスが表示されるようになります。Eclipseのワークスペースを切り替えて利用する場合にロケーションを判別しやすくなります。(参考サイト:eclipseで現在のワークスペースディレクトリを表示Eclipse/Tips
  6. 再度「eclipse.exe」を右クリック→送る→デスクトップ(ショートカットを作成)をクリックします。デスクトップに「eclipse.exe – ショートカット (2)」が作成されます。これをクリーン起動用に編集していきます。
  7. デスクトップにできた「eclipse.exe – ショートカット (2)」を右クリックし、「プロパティ」をクリックします。(または「eclipse.exe – ショートカット (2)」をクリックし、「Alt」キーを押しながら「Enter」キーを押します)
  8. 「ショートカット」タブのリンク先欄に「 -clean -showlocation」(’-clean’の前に半角空白文字必要)を追記します。結果「C:adt-bundle-windows-x86eclipseeclipse.exe -clean -showlocation」と記述します。
  9. 「全般」タブをクリックして、ショートカット名の「eclipse.exe – ショートカット (2)」を「eclipse クリーン起動」に書き換え、「OK」ボタンをクリックします。

その他の起動オプションについては、参考サイトを参照してください。(参考サイト:Advanced Topics in Running Eclipse

《7 Eclipse の起動》

Eclipseを起動しようとしたのに、エラー表示も何もでず起動の反応がない場合、「eclipse.ini」の書き換えに失敗している可能性があります。追加した「-javaagent:dropins/pleiades/~」の記述を削除してみて、日本語化しないバージョンが起動する場合は、記述に誤りがあります。「-javaagent:dropins/pleiades/~」のパスの指定に間違いがないか確認してください。

  1. 初回起動時は自動でクリーン起動になるので、「eclipse.exe – ショートカット」をダブルクリックします。Eclipse の起動スプラッシュイメージが表示されると同時に「キャッシュのクリーンアップ中」と表示されます。
  2. しばらく待つと(30秒位?)、ワークスペース・ランチャー画面が開き、「ADT は、ワークスペースと呼ばれるフォルダーにプロジェクトを保管します。このセッションに使用するワークスペース・フォルダーを選択してください。」と問われます。「ワークスペース」は任意のフォルダを指定しますが、よくわからなければ「..workspace」としてください。「この選択をデフォルトとして使用し、今後この質問を表示しない」にチェックを入れ、「OK」ボタンをクリックします。なお、「ワークスペース」に既存のものを指定した場合は、既存の「ワークスペース」が保持する文字コードなどの環境(以前にEclipse メニューの「ウィンドウ」→「設定」で設定したもの)を引き継ぐことになります。ワークスペースの参考サイトを以下に記します。
  3. Eclipse(ADT(Android Developer Tools))の「Welcome!」にかぶさるように「Android開発へようこそ」画面が表示され、使用統計をGoogleへ送信するか問われるます。「はい」「いいえ」どちらかを好きなほうを選択し「完了」ボタンをクリックします。この選択は、Eclipse メニューの「ウィンドウ」→「設定」→「Android」→「使用統計」→「使用統計をGoogleに送信する。」の画面で変更することができます。
  4. 起動初期画面の、「Android IDE」タブの「×」をクリックして閉じます。Eclipse のメイン・ウィンドウ(ワークベンチ)が表示されます。

Eclipse起動に使用されたJREは、Eclipseメニューの「ヘルプ」→「ADTについて」→「インストール詳細」→「構成」タブをクリックして表示される情報の、「-vm」の次の行を見ると確認できます。(参考サイト:Eclipse 起動時に使用されている Java VM を確認してみよう

《8 Eclipse の設定・確認》

主な設定は Eclipseをチューニング 設定方法 を参考にして下さい。

  1. Eclipse メニューの「ウィンドウ」→「設定」をクリックし、「設定」画面を開きます。
  2. 左側ペインで「一般(General)」(文字の左側にある三角印をクリックするか、文字をダブルクリック)→「エディター(Editors)」→「テキスト・エディター(Text Editor)」を選択します。右側ペインで、「行番号の表示(Show line numbers)」にチェックを入れます。(参考サイト:Eclipse 3.4の各種設定と利用方法~Eclipse 3.4入門~
  3. 左側ペイン(領域)で「一般(General)」→「ワークスペース(Workspace)」を選択します。右側ペインで、「テキスト・ファイルのエンコード」の「その他」にチェックを入れ、「UTF-8」を選択します。(参考サイト:android 文字コード
  4. 左側ペインで「一般(General)」→「外観」→「色とフォント」を選択します。右側ペインで、「基本」→「テキストフォント」ダブルクリック→「フォント」画面で「フォント名」を【MS ゴシック】、「文字セット」を【日本語】に設定して「OK」をクリックします。これをすることで、キーボードの¥(円マーク)を入力したのに(バックスラッシュ)で表示されてしまうということがなくなります。(参考サイト:バックスラッシュを入力したい
  5. 左側ペインで「Java」→「インストール済みのJRE」をクリックします。「jdk1.6.0_39」がチェックされていることを確認します。ここがJDKではなくJREになっていると、デバッグ時にJavaAPIソースが見れないので不便が生じます。
  6. 左側ペインで「Java」→「エディター(Editor)」→「折りたたみ」を選択します。右側ペインで、「折りたたみを使用可能にする」のチェックをはずします。
  7. 左側ペインで「Java」→「コンパイラー」をクリックします。「コンパイラー準拠レベル」が「1.6」であることを確認します。
  8. 設定画面の「OK」をクリックします。

「コンパイラー準拠レベル」のバージョンが「1.7」に対して「インストール済みのJRE」のバージョンが「1.6」の設定で実行しようとすると「Exception in thread “main” java.lang.UnsupportedClassVersionError: xxxx : Unsupported major.minor version 51.0」とエラーになります。(参考サイト:JavaアプリケーションのJavaバージョン)

対応方法はEclipse起動時エラーの傾向と対策内に書いたように、バージョンを揃えます。

《9 Android SDK Managerでコンポーネントを追加する》

「Android SDK マネージャー」で、SDKのコンポーネント(プラットフォームライブラリ、システム画像、サンプルコード、エミュレータのスキン、バージョン特有のツール)を追加したり削除したりできます。表示画面が狭く文字列が全部表示されない場合は、ドラッグすれば画面を大きくできます。ここでは例として、「Android 2.2(API 8)」をインストールしてみます。

  1. Eclipse メニューの「ウィンドウ」→「Android SDK マネージャー」をクリックします。
  2. 「Android SDK Manager」画面が開いたら、「Android 2.2(API 8)」をダブルクリックして展開し、「SDK Platform」、「Google APIs」にチェックを入れます。
  3. 「Install 2 Packages…」をクリックします。
  4. 「Choose Packages to Install」画面が開いたら、「Accept All」のチェックを入れてパッケージすべてに緑のレ点が入ったことを確認して、「Install」ボタンをクリックします。
  5. 画面下に「Downloading SDK Platform~」メッセージが表示され、緑の横棒が伸びていき、「Done loading Packages.」が表示されれば終了です。チェックを入れた行のStatus欄が「Not installed」から「Installed」に変わっているはずです。
  6. 「Android SDK Manager」画面を、通常のWindowsプログラム同様に画面右上角の「×」をクリックして閉じます。
  7. Eclipse メニューの「ファイル」→「再開」をクリックし、Eclipseを再起動します。再起動しないまま次のエミュレータを作成する手順へ進むと、更新が反映されずターゲットに「Android 2.2 – API Level 8」が表示されません。

インストール時にEclipseの「コンソール」ビューに出る「 DDMS files not found: C:adt-bundle-windows-x86eclipseplatform-toolsadb.exe C:adt-bundle-windows-x86eclipsetoolshprof-conv.exe C:adt-bundle-windows-x86eclipsetoolstraceview.bat  」「 Adb connection Error:既存の接続はリモート ホストに強制的に切断されました。 」「 Connection attempts: 1 」のメッセージが気になりますが、無視します。

「Souces for Android SDK」は ソースコードが表示されるようにする場合に必要です。参考サイトを以下に記します。

「Google APIs」は Google MAP を表示するアプリを開発する際に必要でしたが、Google Maps Android API v2からは必要なくなりました。 Androidアプリの署名<KeyStore Keytool AndroidDebugKey> を参考にしてください。

「Extras」の項目の「Android Support Library」は、旧バージョン(Android 1.6~2.3.x)上で新しいバージョンの機能を使用できるようにするための後方互換ライブラリです。参考サイトを以下に記します。

「Extras」の項目の「Google USB Driver」は、実機のAndroid端末をUSB接続してAndroidアプリの実行、デバッグなどを行えるようにするための汎用USBドライバです。 Android Google USBドライバ を参考にしてください。

プラットフォームによって実装されているAPI(Application Programming Interface:アプリケーション・プログラミング・インターフェース)の機能が異なりますが、差異のほぼすべてはAPIの機能追加なので上位互換性があります。バージョン2.2固有のAPIを使用しているアプリは、バージョン1.6を搭載した端末では動作しませんが、以降のバージョンであるバージョン2.3を搭載した端末では問題なく動作します。Androidアプリは、アプリが後で何らかの理由で削除されているAPIの一部を使用している場合を除き、以降のAndroidプラットフォームのすべてのバージョンで実行できます。

どのコンポーネントをインストールするかの開発ターゲットの選定には、Googleによるバージョン別のシェアが参考になります。(参考サイト:Platform Versions / Current Distribution + Historical Distribution

《10 AVD(Android Virtual Device:Android仮想端末) Managerでエミュレータを作成する》

AVD Managerの新規仮想デバイスの作成画面は、r21から刷新されています。レイアウトがどのように見えるか、Android Layout Editorにも示されます。ここでは、「Android 2.2(API 8)」のエミュレータを作成して起動する例を示します。画像解像度は Desire HD の 480 × 800 にしてみました。参考サイトを以下に記します。

  1. Eclipse メニューの「ウィンドウ」→「Android 仮想デバイス・マネージャー」をクリックします。
  2. 「Android 仮想デバイス・マネージャー」画面が開いたら、「新規…」をクリックします。
  3. 「新規 Android 仮想デバイスの作成(AVD)」画面が開いたら、以下のように入力し「OK」をクリックします。
    • AVD名 → DesireHD
    • 装置 → 5.1″ WVGA(480 × 800: mdpi)
    • ターゲット → Android 2.2 – API Level 8
    • Emulation Options: Snapshot → チェックする
  4. 「Android 仮想デバイス・マネージャー」画面の仮想デバイスのリストに、作成された「DesireHD」が表示されます。行をダブルクリックで「AVD詳細」画面が開くので、設定を確認することができます。

AVD名には、半角英数字、「.(ドット)」、「_(アンダーバー)」、「-(ハイフン)」が使えます。スペース(空白)を入れることはできません。使えない文字が含まれていると「OK」ボタンが有効になりません。

装置 は、以前はスキンと呼ばれていたものにあたります。LCD(Liquid Crystal Display:液晶ディスプレイ)サイズ・解像度、外観を設定します。参考サイトを以下に記します。

ターゲット は、Android SDK Managerで「Installed」になっているPlatformが選択可能なものとして表示されます。インストールPlatformを更新した場合、表示への反映はEclipse再起動後になります。

CPU/ABI は、エミュレーションするCPUの種類で、プラットフォーム4.0以降で関係します。CPUのSystem Imageをインストールしていない場合はグレーアウトして選択できません。(参考サイト:Android開発の第一歩!「Hello World」を作成する方法をなるべく簡単に(基本編)

Snapshot は、スナップショット機能を利用したい場合にチェックします。参考サイトを以下に記します。

現実の端末(実機)をソフトウェアで表現し、Androidアプリを実行できるのが仮想端末です。AVD Manager で実機の仕様に沿った設定をすることができ、アプリのほとんどの動作確認をすることができます。Google Play 公開前に複数の仮想端末上で動作テストをおこなっておくと、機種の違いによる問題を未然に発見することができます。オーディオやビデオの再生や、エミュレータのブラウザを起動してインターネットに接続することもできます。データ接続の確立や切断をシミュレートすることもできます。スマートフォン(スマホ)を想定して、かかってくる電話の呼び出しをシミュレートすることもできます。参考サイトを以下に記します。

《11 エミュレータを起動する》

  1. 「Android 仮想デバイス・マネージャー」画面で、先ほど作成した「DesireHD」をクリックし、「開始…」をクリックします。「起動オプション」画面が開きます。
  2. 「画面のサイズに表示をスケールする」は、デフォルトではチェックがはずれています。エミュレータ画面の大きさを実機と同じにするには、「実際のサイズに表示をスケールする」にチェックを入れます。「画面サイズ」は、エミュレータ作成時に装置欄で設定したものが入力されているのでそのままとし、「モニターdpi」右の「?」をクリックします。「モニター密度」画面が開いたら、「画面サイズ」欄に使用パソコンの画面サイズを入力します。「レゾリューション」欄は、「スタート」ボタン→「コントロール パネル」→「個人設定」→「画面の設定」 の解像度の値が自動設定されているはずです。設定ができたら、「OK」をクリックします。「モニターdpi」に自動計算された数値が入り、スケールが設定されます。スケールは、チェックを入れなかった場合のデフォルトサイズからの縮尺度をあらわします。
  3. 「スナップショットから起動する」と「スナップショットへ保管する」は、デフォルトのチェックをいれたままにします。
  4. 「起動」をクリックします。
  5. 黒い背景に白字で小さい字で「ANDROID」と表示された状態が40秒ほど、大きい字で「ANDROID」と表示された状態が50秒ほど続いた後、初期画面が起動します。
  6. 「Android 仮想デバイス・マネージャー」画面を閉じるには、通常のWindowsプログラム同様に画面右上角の「×」をクリックします。

エミュレータによっては、デフォルトのまま起動するとパソコンの画面からはみだすことがあります。参考サイトを以下に記します。

《12 エミュレータの表示言語を日本語にする》

  1. エミュレータ画面右のキー群の上から2つ目左から2つ目の「MENU」キーをクリックします。
  2. エミュレータ画面下にMENUがポップアップするので、右下の「Settings」をクリックします。
  3. 上から11番目の「Language & keyboard」をクリックします。
  4. 1番上の「Select language」をクリックします。
  5. 言語候補画面が開いたら、クリックしながらマウスを上へ移動(スワイプ / ドラッグ)して、言語候補最後尾にある「日本語」をクリックします。スワイプとは画面上を掃くような動作をすることです。(参考サイト:タッチパネルを操作する方法スワイプやピンチアウトってどんな操作?【iPhone操作一覧】

《13 エミュレータの時刻を日本時間にする》

  1. 上記5.までの手順に続いて、エミュレータ画面右のキー群の上から2つ目左から3つ目の「戻る」(矢印がUターンしているもの)キーをクリックします。
  2. クリックしながらマウスを上へ移動(スワイプ / ドラッグ)して、最後尾から2つ目の「日付と時刻」をクリックします。
  3. 「自動」の項目のチェックをはずします。グレーアウトしていた「タイムゾーンの選択」が有効になります。
  4. 「タイムゾーンの選択」をクリックします。
  5. クリックしながらマウスを上へ移動(スワイプ / ドラッグ)して、「日本標準時(東京)GMT+9:00」をクリックします。
  6. 「戻る」キーを2回クリックすると、初期画面へ戻ります。

《14 スナップショット(バックアップ)を取っておく》

  1. 通常のWindowsプログラム同様に画面右上角の「×」をクリックして閉じます。スナップショット機能により。日本語化と日本時間にあわせた状態が保存されます。設定を保存する関係で、閉じるまでに少し時間がかかります。

「.android」フォルダに「DesireHD」フォルダができています。「DesireHD」フォルダと、「DesireHD.ini」ファイルを別の場所にバックアップを取っておけば、この先万が一AVDの挙動がおかしくなっても、バックアップを上書きしてこの状態に回復できます。(参考サイト:低スペックPCでAndroid開発(ちょっとしたネタ帳)

《15 エミュレータを再起動する》

  1. 再度、「DesireHD」をクリック→「開始…」をクリックします。
  2. 「起動オプション」が開いたら、「スナップショットから起動する」にチェックをいれ、今回は「スナップショットへ保管する」のチェックをはずします。
  3. 「起動」をクリックします。
  4. 初回起動時に「スナップショットへ保管する」にチェックをいれていているので、10秒ほどで再起動します。試しに「スナップショットから起動する」のチェックをはずして「起動」をクリックすると、30秒ほど要して、画面ロックがかかって起動します。画面ロックを解除するには、左の鍵マークをクリックしながらマウスを右へ動かします。

《16 ブラウザを起動してみる》

  1. エミュレータ画面下一番右の「地球」アイコンをクリックします。
  2. Google検索が起動します。検索窓に適当な検索語を入れると、ブラウザ機能が有効に働いていることが確認できます。
  3. 「戻る」ボタンをクリックすると、初期画面(ホーム画面)へ戻ります。「ホーム」 ボタンをクリックしても初期画面(ホーム画面)になりますが、「ホーム」 ボタンをクリックした場合は、アプリをバックグラウンドで実行中のまま、一時的に初期画面(ホーム画面)に戻った状態です。「戻る」ボタンをクリックした場合は、アプリを本当に終了させる違いがあります。参考サイトを以下に記します。

仮にインターネットに接続できない場合は、Proxy経由で外部に接続する設定が必要です。参考サイトを以下に記します。

《17 エミュレータを操作してみる》

  1. エミュレータ画面の向きをかえるには、「左側のCtrl」キー(「右側のCtrl」ではダメです)を押しながら「F11」(または「F12」)キーを押します。(押すたびに、縦⇒横⇒縦⇒横と表示が切り替わります。)
  2. エミュレータ画面を全画面表示するには、「左側のAlt」キーを押しながら「英数キー側のEnter」キーを押します。(「右側のAlt」キーや「テンキー側のEnter」キーではダメです。元の大きさにに戻すには、もう一度「Alt」キーを押しながら「Enter」キーを押します。)
  3. 最近使ったアプリを表示させるには、エミュレータ画面右のキー群の上から2つ目左から1つ目の「HOME」ボタン(家のマーク)を長押し(タッチアンドホールド / ロングタップ / ロングクリック)します。
  4. 初期画面へ戻るには、エミュレータ画面上の「戻る」ボタンをクリックします。
  5. 終了するには、通常のWindowsプログラム同様に画面右上角の「×」をクリックします。

「スナップショットへ保管する」にチェックをいれていて、エミュレータ画面の向きが横向きのまま終了すると、次回「スナップショットから起動する」にチェックをいれて起動したときに、エミュレータ画面の向きは縦向きなのに、中の表示は横向きになって表示されるので注記しておきます。

《18 Androidアプリケーションを作ってみる》

  1. Eclipse メニューの「ファイル」→「新規」→「Android アプリケーション・プロジェクト」をクリックします。(以前は Android Project となっていたものに相当します。本などを見て探すと「Androidプロジェクトがない~」と思うかもしれませんが、読み替えるようにします) 表示がない場合は、パースペクティブが「Java」以外の「Java EE」や「リソース」になっているかもしれません。パースペクティブを「Java」にしてみてください。それでも表示されない場合は、Eclipse メニューの「ウィンドウ」→「パースペクティブのカスタマイズ」→ 「ショートカット」タブ→「ショートカット・カテゴリー」で 「Android」にチェックが外れていると思うので、チェックを入れてみてください。参考サイトを以下に記します。

    または、「ファイル」→「新規」→「プロジェクト」→「Android」→「Androidアプリケーション・プロジェクト」、あるいは「ファイル」→「新規」→「その他」→「Android」→「Androidアプリケーション・プロジェクト」とすれば、選択できると思います。ツールバーのアイコン群1番左の、「新規」アイコンをクリックする方法もあります。(参考サイト:AndroidでHelloWorld(その1)

  2. 「新規 Androidアプリケーション」画面が開いたら、「Application Name」欄に「Hello」と入力します。
  3. 「Project Name」欄に「Hello」が「Package Name」欄に「com.example.hello」が自動で設定されます。「接頭部 ‘com.example.’ はプレースホルダーとして意図されており、使用すべきではありません」と警告メッセージが表示されます。プレースホルダーとは、正式なものが定まるまでの場所取りという意味です。「パッケージ名の最初の文字列’com.example.’は、仮のものですよ。正式な名前を決めたら置き換えてくださいね。」という意味です。プレースホルダーを置き換える際は、プログラマが属する会社や組織のインターネットドメイン名を逆に並べたものを使うことが推奨されています。Androidはパッケージ名でアプリケーションの識別を行っているので、世界で唯一であることが保証されているインターネットドメイン名を利用することで、他の開発者とパッケージ名が重複しないことが図れます。例えば、保有インターネットドメイン名が「abcd.co.jp」なら、「jp.co.abcd.hello」というパッケージ名を命名します。当サイトの場合であれば、「com.andr0o0id.hello」とすることになります。「com.example」から始まるパッケージ名のままGoogle Play に アップロードしようとすると「The package name of your apk may not begin with any of the following values: [com.android, com.google, android, com.example」とエラーになります。Google Play にアップロードするまでは、暫時このまま「com.example.hello」として、警告を無視して先へすすめても問題ありません。なお、パッケージ名には最低1つ以上の.(ドット)を含める必要があります。参考サイトを以下に記します。
  4. 「次へ」→「次へ」→「次へ」→「次へ」→「完了」をクリックするだけで、実行すると「Hello world!」と表示するアプリが自動生成されます。(参考サイト:Androidアプリ開発における Target SDK, Minimum Required SDK, Compiler SDK の違い
  5. 左側の「パッケージ・エクスプローラ」に「Hello」プロジェクトがあらわれ、「Hello」プロジェクト配下の「res」→「layout」→「activity_main.xml」が選択された状態になっており、右側の領域にレイアウトエディタが開きます。「Android 4.2」で実行時のイメージが表示されます。「res」フォルダは、Androidアプリケーションで使用する画像、レイアウトや文字列といったリソースを格納する場所です。(参考サイト:AndroidでHelloWorld(その2)Android Eclipseでの新規作成プロジェクトを読み解いてみるさあ!!始めよう!!(プロジェクトの説明)
  6. 実行時のイメージの上の「構成変更ツールバー」(アイコン群並んでいるもの)の一番右のドロイドくんアイコン(17)をクリックし、「API 17: Android 4.2」から「API 8: Android 2.2」に選択を変更すると、実行時のイメージを「Android 2.2」のものに切り替えることができます。
  7. アプリケーションの表示レイアウトを記述する「activity_main.xml」のソースを表示するには、「Graphical Layout」タブ右隣の「activity_main.xml」タブをクリックして、レイアウト表示モードから、 ソースコード表示モードに切り替えます。
  8. アプリケーションの構成を記述するManifestファイルが「AndroidManifest.xml」です。全てのアプリのルートディレクトリに必ずなくてはならない重要なファイルです。バージョン番号、バージョンコード、パッケージ名、パーミッションなどのメタ情報を記述します。 アプリ使用前に、PackageManagerによって読み込まれます。 ソースを表示するには、「Hello」プロジェクト配下の「AndroidManifest.xml」をダブルクリックし、表示された Android Manifest 下部の「Manifest」タブ一番右の「AndroidManifest.xml」タブをクリックします。参考サイトを以下に記します。
  9. アプリケーションの挙動を記述する「MainActivity.java」ソースを表示するには、「Hello」プロジェクト配下の「src」をダブルクリック→「com.example.hello」をダブルクリック→「MainActivity.java」をダブルクリックします。「src」フォルダは、Javaソースコードを配置する場所です。
  10. アプリケーションに表示する文字を記述する「strings.xml」のソースを表示するには、「Hello」プロジェクト配下「res」→「values」をダブルクリック→「strings.xml」をダブルクリックし、表示された リソース要素 下部の「リソース」タブ隣の「strings.xml」タブをクリックします。
  11. 「strings.xml」を修正して、表示されるメッセージを「こんにちは!」に変更してみようと思います。「<string name=”hello_world”>Hello world!</string>」の「Hello world!」の部分を修正して、「<string name=”hello_world”>こんにちは!</string>」と書き換えます。ソースを書き換えると「strings.xml」タブが「*strings.xml」に変化します。
  12. Eclipse メニューの「ファイル」→「保管」をクリックします。(またはフロッピィディスクマークのアイコンをクリックします) 「*strings.xml」となっていたのが「strings.xml」に変化します。

Webアプリの開発経験者なら、Webを使った「例え話(アナロジー)」でAndroidアプリの開発用語を説明しているサイトが参考になります。(参考サイト:WebアプリとAndroidアプリのアナロジー (「Androidのアレは,Webで例えるなら○○だ」)

レイアウトXMLに記述するのが面倒な方は、こちらのサイトが参考になります。(参考サイト:AndroidのUIで,レイアウトXMLの記述を簡素にするための,7つの基礎知識

これからAndroidアプリ開発をすすめるにあたって、参考になるサイトを以下に記します。

《19 AndroidアプリケーションをDesireHDエミュレータで実行する》

  1. 「Hello」プロジェクトを右クリック→「実行」→「Android アプリケーション」をクリックします。
  2. 「こんにちは!」と表示されればOKです。

「Hello」プロジェクトを右クリック→「実行」→「実行の構成」→左ペインAndroidアプリケーション配下に「Hello」プロジェクトが作成されているのでクリック→右ペイン「ターゲット」タブをクリック。以上で設定されたものが確認できます。

いったん設定後は、「Hello」プロジェクトを選択した状態でツールバーのアイコン群左から10番目の「実行」アイコンをクリック(または「Ctrl」キー+「F11」)で、実行できます。

エミュレータでアプリケーションが起動済みで、ソースに変更が無いまま実行しようとすると、「警告: Activity not started. its current task has been brought to the front」とエラーになります。エミュレータ画面で「戻る」(矢印がUターンしているもの)キーをクリックして、一旦アプリケーションを終了してから実行します。

XMLファイルを選択した状態で「実行」すると、「パッケージ・エクスプローラー」欄に「選択していたXMLファイル名.out.xml」ファイルが意図せず作成され、コンソールタブ画面に「Error in an XML file: aborting build.」とエラーが表示されます。例えば「Hello」プロジェクトを選択した状態で「実行」するべきところを、「strings.xml」を選択した状態で「実行」すると、「strings.out.xml」ファイルが作成されこのエラーになります。対処法は、まず作成された「strings.out.xml」のタブの「×」をクリックして閉じます。次に、「パッケージ・エクスプローラー」欄の「strings.out.xml」を右クリック→「削除」→「OK」をクリックして削除します。タブを閉じ忘れて「’削除’のりファクタリングの処理中に例外がキャッチされました。」とメッセージが出た場合は「中断」を選択して削除をやり直します。その後に、「Hello」プロジェクトを選択してから実行します。または、エラーだけ解消したい場合は、Eclipse メニューの「プロジェクト」→「クリーン」→「OK」をクリックします。(参考サイト:レイアウト画面の作成、割り勘アプリでAndroidアプリ開発を体験

「emulator-5554 disconnected!」となる場合は、DDMSパースペクティブで「Reset adb」を実行します。(参考サイト:emulator-5554 disconnected!

コンパイルエラーの場合「問題」ビューに情報が表示されるので、「問題」タブをクリックして確認します。例えば、さきほどの「Error in an XML file: aborting build.」の場合は、「早すぎたファイル終わり。 strings.out.xml」とエラーの原因となったリソースが表示されており、行をダブルクリックすると、その箇所へ飛ぶことができます。

1回目は起動したのに、2回目起動しないといった場合などの参考サイトを紹介しておきます。(参考サイト:AndroidのHello Worldアプリが、というか、エミュレータがエラーでうまく動かない方へ。その2。

スナップショットを保存したくない場合は、先に「DesireHD」エミュレータを「スナップショットへ保管する」のチェックをはずして起動しておきます。

Eclipseを一旦終了して起動しなおすと、実際はソースにエラーがなくても、ソースにエラーがあることを示す「赤の×」がたくさんついて起動することがあります。たとえば、「’Runnning Android Lint’ に問題が発生しました。」とポップアップが出たりしますが、閉じてかまいません。また、「問題」ビューを見ると「Unable to reseolve target ‘android-17′ until the SDK loaded.」や「ビルド・パスが不完全であるため、プロジェクトはビルドされませんでした。」といった表示が出ていたりしても、10秒ほどで自然に「赤の×」表示が消えるので、少し待つようにします。

《補足》

Eclipseメニューバーに「Android SDK マネージャー」や「Android 仮想デバイス・マネージャー」(AVD マネージャー)のアイコンが表示されなかったり、Eclipse メニューの「ウィンドウ」に「Android SDK マネージャー」や「Android 仮想デバイス・マネージャー」(AVD マネージャー)が表示されなかったりする場合、Eclipse メニューの「ウィンドウ」→「パースペクティブのカスタマイズ」→ 「コマンド・グループの可用性」タブで 「Android SDK および AVD マネージャー」のチェックが消えている可能性があるので、チェックを入れます。(参考サイト:Eclipse の Window メニューに Android SDK / AVD Manager が表示されない時

エミュレータ操作中に、「emulator-arm.exeは動作を停止しました 問題が発生したため、プログラムが正しく動作しなくなりました。プログラムは閉じられ、解決策がある場合は Windows から通知されます。」とエラーがでた場合は、メモリ不足が考えられます。コンピュータを再起動してみるか、エミュレータ作成時の Memory options の数値を調整する必要があります。

Nexus7エミュレータを作成しようとして、Eclipse メニューの「ウィンドウ」→「Android 仮想デバイス・マネージャー」をクリックし、「Device Definitions」タブをクリックし、「Nexus 7 by Google」をクリックし、「AVDの作成」をクリックし、ターゲットを「Android 4.2 – API Level 17」とした時の Memory options の規定値は RAMサイズ→1024 で VM Heapサイズ→32 となりますが、この設定で作成したエミュレータを起動しようとしたところ上記の「emulator-arm.exeは動作を停止しました」エラーが発生しました。「Failed to allocate memory: 8」とでることもあるようです。RAMサイズ→768 にすることでエラーが発生せず起動できるようになりました。

最近気づいたのですが、Android SDK Tools Rev 22.0.1 では、AVD作成時に「On Windows emulating RAM greater than 768M may fail depending on the system load. Try progressively smaller values of RAM if the emulator fails to launch.(Windowsの場合、エミュレータのRAMが768Mよりも大きいと、システムの負荷により失敗することがあります。エミュレータが起動に失敗した場合、RAMの値を徐々に小さくしてみてください。)」と案内が表示されるようになっていました。(2013/06/13追記)(参考サイト:android エミュレーターがやっぱり動かない。

Eclipse起動時エラーの傾向と対策Androidエラーの傾向と対策プログラミング参考サイト なども参考にしてみてください。

本サイトの記述をここまでお読みいただきありがとうございました。最後に有益な他サイト様を紹介いたします。最初に推薦しろよというツッコミがありそうですが、ご容赦願います。

以上です。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>