|
○ はじめに
何はともあれ、開発環境が無ければ話になりません。ここでは、Android SDK を用意してエミュレータでアプリケーションを実行する所までを説明します。
○ SDK のダウンロード
Android SDK を Android Developersからダウンロードします。ページ下の「Get the SDK」ボタンをクリックするとGet the Android SDKページに移ります。ここで「Download the SDK ADT Bundle for ...」(...はご利用OSが入ります。WindowsとかLinuxとか)をクリックして、Terms and Conditions を受け入れて 32bit か 64bit を選択して Download ボタンをクリックすると、adt-bundle--<os_platform>-yyyymmdd.zip のダウンロードが始まります。2013年7月22日時点では yyyymmdd は 20130717 でした。
○ 必要なシステム環境
本文書で扱う SDK Tools 22.0.4 (API level 17)(2013/7版) / プラットフォーム Android 2.4 で必要とするシステム環境は下記です(Get the Android SDKページのSYSTEM REQUIREMENTSによる)。
- Windows XP ( 32bit )、Vista ( 32 or 64bit )、Windows 7 ( 32 or 64 bit )
- Mac OS X 10.5.8 以降(x86 のみ)
- Linux(Unubtu、Lucid Lynx でテスト済み)
- glibc 2.7以降
- Ubuntu の場合は 8.04以降
- 64bit ディストリビューションの場合は 32bitアプリケーションが動作可能であること
- JDK6
- Apache Ant 1.8 以降
- gcj は使えない
○ SDK のインストール
SDK のインストールは簡単です。
まず、ダウンロードした SDK をインストールしたい場所に展開します。展開したディレクトリを以後 $SDK_ROOT と呼びます。$SDK_ROOT/sdk/tools、$SDK_ROOT/sdk/platform-tools に格納されているツールを開発に使用しますので、$SDK_ROOT/sdk/tools、$SDK_ROOT/sdk/platform-tools をパスに設定しておいてください。
○ SDK Manager
コマンドプロンプトで下記を実行すると、SDK Manager というツールが起動します。
android sdk
SDK Manager
インストール状況の確認や、パッケージのインストール/アンインストール等の作業が一通り出来るツールになっています。本サイトではしばらく使いませんが、必要時には情報を追記したいと思います。
○android create project コマンドによるプロジェクト作成
Eclipse を使わずにコマンドラインで Android アプリケーションを作成するためには、android create project というコマンドでプロジェクトを作成します。
その前に、まず下記コマンドを実行して、お使いの環境で利用可能な Android プラットフォームを調べます。
android list targets
自分の環境(Linux上)では↓の様に表示されました。
Available Android targets: ---------- id: 1 or "android-17" Name: Android 4.2.2 Type: Platform API level: 17 Revision: 2 Skins: WVGA800 (default), WXGA720, WXGA800-7in, WSVGA, HVGA, WQVGA400, WQVGA432, WXGA800, WVGA854, QVGA ABIs : armeabi-v7a
環境によっては複数表示されたりすると思いますが、これから作成するプロジェクトをどのターゲット用に作るかを決めなければいけません。決めたらその id 値(ここの例では 1 もしくは android-17 という名前)を覚えておきます。
次に、今の id 値、アプリケーション名、プロジェクトファイルを作成する場所、Activity (メインクラス。UI を表示可能)の名称、パッケージ名を指定して、android create project コマンドを以下の様に実行します。
android create project --target <target-id> --name アプリケーション名 \ --path プロジェクトファイル作成パス --activity Activity名 --package Activityが属するパッケージ名
android create project コマンドが成功すると、以下の様なファイルツリーが作成されます。AndroidManifest.xml はアプリケーション全体の設定ファイルで、main.xml/strings.xml はリソース定義ファイルです。この辺りについては、いずれ説明する予定です。
- プロジェクトファイル作成パス
- AndroidManifest.xml
- ant.properties
- bin/
- build.xml
- libs/
- local.properties
- proguard-project.txt
- project.properties
- res/
- drawable-hdpi/ic_launcher.png
- drawable-ldpi/ic_launcher.png
- drawable-mdpi/ic_launcher.png
- drawable-xhdpi/ic_launcher.png
- layout/main.xml
- values/strings.xml
- src/your/package/name/ActivityName.java
ant debug (デバッグ用ビルド) を実行するとアプリケーションがビルドされ、bin フォルダ内に <アプリケーション名>-debug.apk というファイルが出来ます。これがアプリケーションコードと画像等のリソース等を一つにまとめたパッケージファイルとなります。リリースビルドの場合は -debug が取れると思いますが、まだやったことないので後日記載します。
○ Android Virtual Device (AVD) の作成
さて、作ったアプリケーションは実機かエミュレータかで動作確認する必要があります。自分、Android の実機を持ち合わせていないので…^^;本サイトでは基本的にエミュレータで動作確認することにします。
エミュレータ上でアプリケーションを動かすためには、まず初めに Android Virtual Device (AVD) を作成する必要があります。GUI操作で作成するには、コマンドプロンプトで下記を実行して AVD Manager を起動します。
android avd
AVD Manager
AVD Manager 上で「New」ボタンをクリックすると、新規作成ダイアログが表示されます。
AVD の新規作成ダイアログ
AVD Nameにこれから作るAVDの名前を入力し、Device、Target、CPU/ABI を選択すれば「OK」ボタンがクリック出来る様になります。後は必要に応じてSD Cardサイズ等の他の設定を行うことも可能です。
Device は下記から選択できます。
- Nexus 4
- Nexus 10
- Nexus 7
- Galaxy Nexus
- Nexus S
- Nexus One
- 10.1" WXGA
- 7.0" WSVGA
- 5.4" FWVGA
- 5.1" WVGA
- 4.7" WXGA
- 4.65" 720p
- 4.0" WVGA
- 3.7" FWVGA
- 3.7" WVGA
- 3.4" WQVGA
- 3.3" WQVGA
- 3.2" QVGA
- 3.2" HVGA slider
- 2.7" QVGA slider
- 2.7" QVGA
Targetは、ご利用の環境にインストールされている Android プラットフォームが選択可能です(著者環境では Android 4.2.2 - API Level 17)。CPU/ABI は、著者環境では ARM (armeabi-v7a) あるいは Intel Atom x86 が利用可能でした。ここまでを選択すると、Memory Options の値がデフォルトで設定される様です。
なお、Android のエミュレータは起動に時間がかかります。Emulation Options の Snapshot をチェックしておくと、スナップショットからの起動が可能となります。初回起動時はスナップショットが無いので時間がかかりますが、次回以降は起動までの時間が短縮されます。
作成した AVD に関するファイルは、デフォルトでは下記に格納されます。ファイルには <AVD_name>.ini、AVD 設定ファイル、ユーザデータイメージファイル、SDカードイメージファイル等があります。
- ~/.android/avd/ (Linux/Mac)
- C:\Documents and Settings\<user>\.android\ (Windows XP)
- C:\Users\<user>\.android\ (Windows 7/Vista)
ちなみに、これらの操作をコマンドラインでやる場合は、下記のコマンドを実行します。
(AVD作成) anroid create avd -n <name> -t <targetID> [-<option> <value>] ... (AVD削除) android delete avd -n <name>
○ エミュレータの起動およびアプリケーションの実行
さて、先ほど作成した AVD を使ってエミュレータを実行してみます。
AVD Manager から起動する場合、AVD を選択して「Start」ボタンをクリックします。すると Launch Options ダイアログが表示されます。
Launch Options ダイアログ
前回起動時のユーザデータを消去する場合は「Wipe user data」オプションをチェック、AVD 作成時に「Snapshot」オプションをチェックしていれば「Launch from snapshot」「Save to snapshot」がチェック可能となるので、必要に応じてチェックして「Launch」をクリックします。すると下記ダイアログが表示されます。
エミュレータ起動状況
著者の場合は当初、Vista で実行した時に「PANIC: Could not open ...」の様なエラーが出てエミュレータが起動出来ませんでした。これは Windows でマイドキュメントの位置を変えている場合に起き易い様ですが、AVD は場所を変えたマイドキュメントに作成されるのに、AVD 開始時はファイルをデフォルト位置に探しに行くため、でした。
なお、コマンドラインで起動する場合は下記の様にします。コマンドラインオプションについてはここに一覧があります。
emulator -avd <avd_name> [<options>]
起動に成功すると、下記のエミュレータ画面が表示されます。
エミュレータ起動中
画面に android と表示されている間は、エミュレータの起動処理中です。使用可能になると下記の様な画面か、その次のロック中画面になります。
エミュレータ画面
ロック中画面
後は、前述の <アプリケーション名>-debug.apk (リリースビルドの場合は名前が異なる)をエミュレータに転送すれば、エミュレータ上でアプリケーションを実行できます。apk ファイルを転送するには、エミュレータを起動した状態で adb install コマンドを実行します。apk ファイルがあるディレクトリにいるとすると
adb install ./<アプリケーション名>-debug.apk
とします。これにより、エミュレータに apk ファイルが転送されます。HOME 画面下部の下図赤丸で囲んだ部分をクリックすると、インストールされているアプリケーション一覧を見れますので、転送したアプリケーションを選択して実行します。
HOME 画面下部の赤丸で囲んだ部分をクリック
アプリケーション一覧画面(FirstApp が android create project コマンドで作ったデフォルトアプリケーション)
FirstApp の実行画面