Hatena::Groupandroid

lnzntの Android 日記 このページをアンテナに追加 RSSフィード

2012年04月06日(金)

AVD を作る

21:55 | AVD を作る - lnzntの Android 日記 を含むブックマーク はてなブックマーク - AVD を作る - lnzntの Android 日記 AVD を作る - lnzntの Android 日記 のブックマークコメント

環境構築ができたので、AVD (Android Virtual Device) を作ってみます。

AVD は仮想デバイスの構成です。これをエミュレータに実行させることで仮想デバイスを実現します。

Android SDK の設定

(Eclipse + ADT でなく)SDK のツールで AVD の作成/実行など管理をする場合は、ツールコマンドのパスを通しておく必要があります。

[Linux の場合]

export PATH=$PATH:~/android-sdks/tools:~/android-sdks/platform-tools

[Windows XP の場合]

環境変数 PATH に以下のフォルダを追加する。

  • C:\Documents and Settings\<ユーザ>\android-sdks\tools
  • C:\Documents and Settings\<ユーザ>\android-sdks\platform-tools

環境変数 ANDROID_SDK_HOME

AVD は環境変数 ANDROID_SDK_HOME で指定されるディレクトリ(フォルダ)の下の .android というサブディレクトリ(サブフォルダ)に作成されます。

また、エミュレータ実行時も上記の場所から AVD を探します。

Eclipse + ADT で AVD を作成/実行した場合も同様です。

環境変数 ANDROID_SDK_HOME が設定されてない場合、.android は以下の場所に作成されます。

[Linux の場合]

[Windows XP の場合]

  • C:\Documents and Settings\<ユーザ>\.android

AVD を作成

では、AVD (エミュレータ) を作成します。

eclipse を起動して以下を行います。

  1. 「ウィンドウ」->「AVD マネージャー」で AVD ダイアログを開く
  2. AVD ダイアログで「新規」をクリックして作成ダイアログを開く
  3. 以下を入力して「AVD の作成」をクリック
名前my_avd (任意でよい)
ターゲットAndroid 4.0.3 - API Level 15 (現状ではこれ一択)
SDカード - サイズ128 (任意でよい)
Snapshot使用可能にチェックする(そのほうが、二度目以降の起動が早くなる)
他の項目(ターゲットを選ぶと自動的に埋められる)

AVD の起動は AVD ダイアログで AVD を選択して「開始」をクリックします。

----

AVD は起ち上がるのに数分かかり非常に遅いです。

Eclipse でアプリを作成して実行しても、自動的に AVD が起動されますが(それが遅いためのタイムアウトで?)実行(AVD へのアプリインストール)が失敗することがあります。

上記の Snapshot は使用可能にしておいたほうがよいようです。(次回からの起動が早くなります)

コマンドラインでの AVD の作成/実行

コマンドラインでの作成/実行の仕方の主なものをメモしておきます。

詳しくは、以下を参照してください。

AVD の作成

$ android create avd -n my_avd -t 1  # 1 はターゲットID

ターゲット ID の確認方法

$ android list target
Available Android targets:
----------
id: 1 or "android-15"
     Name: Android 4.0.3
     Type: Platform
     API level: 15
     Revision: 3
     Skins: QVGA, WVGA854, WXGA720, WXGA800, WSVGA, WVGA800 (default), HVGA, WQVGA400, WQVGA432
     ABIs : armeabi-v7a

エミュレータ(AVD) の起動

$ emulator -avd my_avd

エミュレータが起動したところ

f:id:lnznt:20120406220930j:image

エミュレータについて詳細は以下を参照してください。

エミュレータは(一部できないこともありますが)実機の機能を模倣します。

特筆すべきは、ホストマシン含め仮想ネットワークを構築していることです。

仮想ネットワークは以下のようなイメージになっています。

20120406222121

  • エミュレータからインターネットにアクセスできます
  • 例えば、「http://10.0.2.2/」でホストの(Apacheなどの)Webページをブラウズできます
  • ホストからエミュレータ(10.0.2.15)へも通信できます(まだ試してませんが)
  • 仮想DNS はホストの情報を読み取って構築されます。最大4つです

----

私は実機を持ってないのでエミュレータの扱いにもたつきます。

最初、画面がロックされてて焦りました。(施錠アイコンを開錠アイコンにドラッグするとアンロックされます。[Menu]押下でもアンロックできます。)

f:id:lnznt:20120406223904j:image