こしごぇ(B)

旧:http://d.hatena.ne.jp/koshigoeb/

Android エミュレータと格闘中

Intel HAXM

SDK Manager からインストール出来るイメージが遅すぎて使える気がしなかったので、Intel のイメージを使うために HAXM をインストール。

1.0.1 R2 には OSX 10.8.2 で使うとカーネルパニックがどうこうという話があるようで、1.0.4-hotfix を使用。
インストーラがダイアログに"VT/NX Not present"というメッセージを出して進まない件に遭遇したのは、ディスクのフォーマットが影響していた模様。

true, false コマンドを大文字で呼べるようにしてみたらインストーラが進んで完了できた。

Intel のイメージ

上記 2.3.7, 4.0.4 が SDK Manager で表示されるバージョン番号より大きかったので使って見たところ、android list target では 2.3.3, 4.0.3 と表示されて困惑。そもそも SDK Manager 経由でのインストールを推奨しているので同じものなのかも。

未解決の問題

エミュレータに関する知識が不足しているのか、Android 自体に対する知識が不足しているのか。

  • 2.3.3 のイメージを使って作成した仮想マシンの言語設定に English しかない件
  • 4.0.3, 4.1.2 のイメージを使って作成した仮想マシンで日本語入力する上手い方法を知りたい
    • キーボードサポートを無効にすると入力が面倒なので hw.keyboard=yes としたい
    • hw.keyboard=yes にするとソフトウェアキーボードが表示されず IME の切り替えをどうやったらいいのか分からない
      • Japanese IME をデフォルトに設定したら日本語入力は出来るけど、他の入力モードにするにはどうしたら?
    • → hw.keyboard=yes にした上で、Android の設定でハードウェアキーボードをOFFしておけばソフトウェアキーボードが表示される

追記:名前解決

グローバルに公開していないプライベートなドメインをどう解決させるのがスマートなのか。
毎度 /system/etc/hosts を adb push するのが面倒だったので、ホストマシンで動かしている DNS サーバを参照する様にしておく。

$ emulator -avd <name> -dns-server 127.0.0.1