▼Androidメモ▼
はじめてのAndroidアプリケーション


「Hello World!」という文字を表示するプログラムを作成する。



開発ツール

Androidアプリを作るために必要な開発ツールは次の2つ。
Java Development Kitのインストール
「Java Development Kit」(JDK)は、パソコン上で動くJavaアプリを作成するための開発キット。
JDKは「ADT Bundle」に含まれている「Eclipse」や「Android SDK Tools」の実行に必要になる。
Macにはすでにプリインストールされているので、インストール作業は必要ない。

  1. JDKのダウンロードサイトを開く。
  2. 「Java SE 6 Update 43」の「JDK」の「Download」ボタンを押す。
    ※「Update 43」はバージョン番号なので数字が増えている可能性があり。
  3. 「Accept License Agreement」をチェックし、使用しているOSのJDKをダウンロード。
    OS インストーラ
    Windows x86(32bit版) jdk-6u43-windows-i586.exe
    Windows x64(64bit版) jdk-6u43-windows-x64.exe
  4. インストーラを実行し、インストーラの指示に従ってインストール。

ADT Bundleのインストール
「ADT Bundle」はAndroid開発ツールセット。以下のツールが含まれている。
開発ツール 説明
Eclipse+ADT Plugin 統合開発環境「Eclipse」にAndroidプラグインを追加したもの。
Android SDK Tools Android SDKのツール群。
最新のAndroidプラットフォーム コンパイル時に利用する最新のAndroid OS向けのライブラリ。
最新のAndroidシステムイメージ エミュレータ実行時に利用する最新のAndroid OS向けのシステムイメージ。

  1. Android Bundleのダウンロードサイトを開く。
  2. ダウンロードしたのZIPファイルを解凍して、適当なフォルダ(Windows は「C:\」、Macは「アプリケーション(/Applications/)」)に配置。
  3. わかりやすいように短いフォルダ名に変更。
    ・「adt-bundle-windows-x86_64-20130219」→「adt-bundle-windows」
    ・「adt-bundle-mac-x86_64-20130219」→「adt-bundle-mac」

Eclipseの日本語化
Eclipseはそのままではメニューの文字が英語なので日本語化を行う。
  1. Eclipseの日本語化プラグイン「Pleiades」の「安定版」をダウンロード。
  2. ZIPを解凍後、解凍したフォルダ内の「features」と「plugins」の中身をelipcseの「features」と「plugins」にコピー。
  3. eclipse.iniをテキストエディタで開き、以下の1行を最終行に追加。
    Windowsはeclipseフォルダ内、MacはEclipse.appを右クリック後「パッケージの内容を表示」内に存在。
    OS パス
    Windows -javaagent:plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar
    Mac -javaagent:/Applications/adt-bundle-mac/eclipse/plugins/jp.sourceforge.mergedoc.pleiades/pleiades.jar

Android SDKマネージャの利用
インストール直後の初期状態では、Eclipseには最新のAndroid OS向けのライブラリとツールしか用意されていない。
そこで「Android SDKマネージャ」を使って、過去のバージョンのAndroid OS向けのライブラリとツールをインストール。
  1. Eclipse.exe(またはEclipse.app)をダブルクリックしてEclipseを起動。
  2. ワークスペース(プロジェクトの保存先)選択ダイアログが開くので「OK」ボタンを押す。
  3. Welcome画面が表示されるのでタブの「×」ボタンでタブを閉じる。
  4. メニュー「ウィンドウ→Android SDK マネージャー」を選択。
  5. インストールしたいAndroid OSのライブラリとツールの項目をチェックし、「Install」ボタンを押す。
    インストールすべき項目は次の通り。
    グループ 項目 説明
    Tools
    Android SDK Tools Android SDKのツール群
    Android SDK Platform-tools Android SDKプラットフォームのツール群
    Android 4.2.2 (API 17) SDK Platformなど全て Android 4.2.2のAndroidプラットフォームと、
    Android 4.2.2向けアプリの開発で必要なツール群
    Extras Android Support Library
    Androidサポートライブラリ
    Google Cloud Messaging for Android Library GCMのライブラリ
    Google USB Driver
    USBドライバ(Windowsでのみ必要)
    Intel Hardware Accelerated Execution Manager 高速なIntelエミュレータの実行に必要
  6. 各ライセンスを閲覧後、Accept Licenseをチェックし、最後に「Install」ボタンを押す。
  7. 再起動確認ダイアログが開くので「はい」ボタンを押す。
「Intel Hardware Accelerated Execution Manager」はAndroid SDKマネージャでインストールしただけでは適応されないので、以下のフォルダにインストーラが取得されてきているので、インストーラを実行してインストール。
OS Intel HAEMのインストーラ
Windows adt-bundle-windows/sdk/extras/intel/Hardware_Accelerated_Execution_Manager/IntelHAXM.exe
Mac adt-bundle-mac/sdk/extras/intel/Hardware_Accelerated_Execution_Manager/haxm-macosx_r02.dmg


Android仮想デバイスの追加
インストール直後の初期状態では、エミュレータの端末設定が存在しないので、エミュレータでの実行ができない。そこで「Android仮想デバイスマネージャ」で「Android仮想デバイス」の設定を追加する。
  1. メニュー「ウィンドウ→Android仮想デバイス・マネージャー」を選択。
  2. 「Device Definisions」を選択。
    「Device Definisions」には主要デバイスのエミュレータの端末設定が用意されている。
  3. 「Galaxy Nexus」を選択して、「AVD」の作成ボタンを押す。
  4. ターゲットに「Android 4.2.2 - API Level 17」、CPUに「Intel Atom(x86)」、SDカードのサイズに「100(適当な数値)」を指定してOKボタンを押す。
    CPUは「Intel」が選択できる時は「Intel」を選択した方がエミュレータが高速に動きます。ターゲットのバージョンや種類によっては「Intel」を選択できないことがある。また、Googleの拡張API(Googleマップの機能など)を使う時は「Google APIs」ではじまるターゲットを指定する必要がある。
  5. 「AVD_for_Galaxy_Nexus」が生成されているので、それを選択して開始ボタンを押す。
  6. 「Launch Options」ダイアログが開くので「起動」ボタンを押す。


コマンドラインツールのパスの設定

Android SDKの「tools」フォルダと「platform-tools」フォルダにパスを通すことにより、Android SDKのコマンドラインツールを利用できるようになる。

【Windows】

  1. スタートメニュー「設定→コントロールパネル→システム」を選択し、システムのプロパティダイアログを開く。
  2. 詳細タブを選択。
  3. 環境変数ボタンを押し、環境変数ダイアログを開く。
  4. ユーザー環境変数にすでに「PATH」が存在したら「編集」ボタン、存在しなかったら「新規」ボタンを押す。
  5. 変数の編集ダイアログにパスを";"で区切りで「C:\adt-bundle-windows\sdk\tools」と「C:\adt-bundle-windows\sdk\platform-tools」を追加。
  6. コマンドプロンプトを起動して、以下のコマンドでパスが通ったことを確認。
    echo %PATH%
【Mac】
  1. ターミナルで以下のコマンドを入力し、隠しファイルを表示するように設定。(元に戻す時はFALSE)
    defaults write com.apple.finder AppleShowAllFiles TRUE
    killall Finder

  2. ターミナルでホームフォルダ(ユーザー名のフォルダ)を開き、.bash_profileをテキストエディタ「mi」で開く。ない時は新規作成。
  3. PATHの記述を追加。「export PATH=」以降の文字はパスを「:」区切りで指定。
    export PATH=$PATH:/Applications/adt-bundle-mac/sdk/tools:/Applications/adt-bundle-mac/sdk/platform-tools

  4. 文字コード「UTF-8」、改行コード「LF」で保存。
  5. ターミナルを再起動して、以下のコマンドでパスが通ったことを確認。
    printenv PATH

プログラムの作成


プロジェクトの作成
  1. Eclipseのメニュー「ファイル→新規→プロジェクト」を選択。
  2. 「Android アプリケーション・プロジェクト」を選択し次へボタンを押す。
  3. アプリケーション名、プロジェクト名、パッケージ名および各種設定を次のように指定し、「次へ」ボタンを押す。
    設定項目 説明 設定値
    アプリケーション名 アプリケーション名。 HelloWorld
    プロジェクト名 プロジェクト名。プロジェクトフォルダ名などで利用。 HelloWorld
    パッケージ名 パッケージ名
    通常は自分の持つサイトのドメインの逆順+アプリID
    net.npaka.helloworld
    最小必須SDK サポートするAndroidバージョンの最低値 API 14: Andorid 4.0(IceCreamSandwitch)
    ターゲットSDK 動作保証するAndroidバージョン。
    基本的に最新バージョンを指定。
    API 17: Android 4.2(Jelly Bean)
    次でコンパイル コンパイル時に利用するAndroidバージョン。
    Googleの拡張ライブラリを使う時は、
    「Google APIs」ではじまる項目を指定。
    API 17: Android 4.2(Jelly Bean)
    テーマ テーマを指定。
    None(なし)
    Holo Dark(黒ベース)
    Holo Light(白ベース)
    Holo Light with Dark Action Bar
    (白ベースでアクションバーのみ黒ベース)
    None

  4. アイコンやアクティビティを作成するかどうかやプロジェクトの作成場所の設定を行い、「完了」ボタンを押す。
    設定項目 説明 設定値
    カスタム・ランチャー・アイコンを作成する プロジェクト作成時にランチャーアイコンを作成するかどうかを指定。
    チェックなしでデフォルトアイコンになる。
    チェックなし
    アクティビティーの作成 プロジェクト作成時にアクティビティを作成するかどうかを指定。 チェックなし
    このプロジェクトをライブラリーとしてマークする ライブラリーのプロジェクトに設定するかどうかを指定。 チェックなし
    このワークスペース内にプロジェクトを作成 workspaceフォルダ下にプロジェクトフォルダを作成するかどうかを指定。
    指定のフォルダ下にプロジェクトフォルダを作成することも可能。
    チェックあり
    ワーキング・セットにプロジェクトを追加 ワーキングセットにプロジェクトを追加するかどうかを指定。 チェックなし

次のようなファイル構成でプロジェクトが生成される。
フォルダ/ファイル 説明
srcフォルダ ソースコードを格納
genフォルダ 自動生成するソースコード(手作業で修正しない)
assetsフォルダ アセットを格納
binフォルダ 自動生成する実行ファイル(手作業で修正しない)
libsフォルダ ライブラリを格納
resフォルダ リソースを格納
AndroidManifest.xml マニフェストファイル
proguard-project.txt ProGuard(難読化ツール)の設定
project.properties プロジェクトの設定

リソースには「アプリアイコン」「文字リソース」「スタイル」が生成されている。
フォルダ/ファイル 説明 パス
アプリアイコン 解像度別にアプリアイコンの画像が用意されている。
drawable-ldpi/ic_launcher.png
drawable-mdpi/ic_launcher.png
drawable-hdpi/ic_launcher.png
drawable-xhdpi/ic_launcher.png
文字リソース アプリ名のみ指定されている。 values/string.xml
スタイル API Level別にテーマのみ指定されている。
values/styles.xml
values-v11/styles.xml
values-v14/styles.xml


ソースコードの追加
今回のプログラムは、2つのソースコード「HelloWorld.java」「HelloView.java」で構成されてる。ソースコードをプロジェクトに追加する手順は次の通り。
  1. パッケージエクスプローラのプロジェクト名(HelloWorld)を右クリックし、ポップアップメニュー「新規→クラス」を選択。
  2. パッケージにパッケージ名(net.npaka.helloworld)、名前にクラス名(HelloWorldまたはHelloView)を入力して完了ボタンを押す。
パッケージエクスプローラでソースコードを選択することで、エディタで編集できるようになる。
HelloWorld.java
package net.npaka.helloworld;
import android.app.Activity;
import android.os.Bundle;
import android.view.Window;

//HelloWorld
public class HelloWorld extends Activity {
//アクティビティ起動時に呼ばれる
@Override
public void onCreate(Bundle bundle) {
super.onCreate(bundle);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(new HelloView(this));
}
}

HelloView.java
package net.npaka.helloworld;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;

//HelloWorld
public class HelloView extends View {
//コンストラクタ
public HelloView(Context context) {
super(context);
setBackgroundColor(Color.WHITE);
}

//描画
@Override
protected void onDraw(Canvas canvas) {
Paint paint=new Paint();
paint.setTextSize(48);
canvas.drawText("Hello World!",0,48,paint);
}
}


マニフェストファイルの編集
パッケージエクスプローラの「AndroidManifest.xml」を選択することでマニフェストファイルを編集できるようになる。
AndroidManifest.xml
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="net.npaka.helloworld"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="17" />

<application
android:allowBackup="true"
android:label="@string/app_name"
android:theme="@style/AppTheme" >

<activity
android:label="@string/app_name"
android:name=".HelloWorld" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

</application>

</manifest>


エミュレータでの実行
  1. Eclipseのメニュー「実行→デバッグの構成」を選択。
  2. ツリーの「Android アプリケーション」を選択。
  3. 新規の起動構成ボタン(ツリー上に並んでいるボタンで一番左のもの)を押す
  4. Androidタブでプロジェクトに「HelloWorld」を指定。

  5. ターゲットタブで「デバイスを選択するときに常にプロンプトを表示」を選択し、「デバッグ」ボタンを押す。

  6. 先ほど作成したAndroid仮想デバイスを選択し、OKボタンを押す。

  7. エミュレータが起動したら、ロック画面を解除。
  8. アプリが実行される。

−戻る−