メモ: Android アプリのデバッグ

デバッグについては、いろいろとコツ?がいるようで、なかなか一筋縄にはいかない。
その辺りについてのメモ。

携帯端末のエミュレータについて


SDK 付属の標準エミュレータを使うのでも良いが、実際の端末向けにあわせてある AVD を利用するのもよい。SH01 や Xperia 向けの開発環境は、それぞれのメーカが用意している開発者向けサイトから提供されている。

Sharp SH Developers Square (SH01)
https://sh-dev.sharp.co.jp/android/

Sony Ericsson developer World (Xperia)
http://developer.sonyericsson.com/wportal/devworld/technology/android/developer-tools

それぞれ、 SDK AddOn という形で提供されており、いずれも圧縮ファイルを展開し、Android SDK インストールディレクトリの add-ons 以下にディレクトリごと配置する。
(例えば、 d:\android-sdk-windows/add-ons/XPERIA-X10_r1/ のように)

その後、 Eclipse から Android SDK and AVD Manager を開き、 Installed Packages を確認。

画像


あとは、先の AVD 作成手順と同様にして、それぞれの端末用の AVD を作成する。

画像


デバッグ実行について


Eclipse からデバッグ実行を行う場合、時折 Eclipse からエミュレータへ接続できないことがある。どういう条件で発生するのかはよくわからないが、これまで触ってきた感じでは、デバッグ実行時にエミュレータを起動しようとすると駄目なことが多い気がする。そのため、今のところ、デバッグする前にあらかじめエミュレータを起動しておき、それからデバッグするようにしている。

エミュレータの起動は、 Eclipse の Android SDK and AVD Manager から、 AVD を選択し、 Start を実行。
このとき、 Launch Options ダイアログが表示されるが、ここで、エミュレータの画面サイズが指定できる。
特に何も指定しない場合、エミュレータがディスプレイにほぼ一杯表示されるため、作業しにくい。
Scale display to real size のチェックを入れて、 次の値を指定する。

  • Screen Size: エミュレータの表示サイズ。インチ単位。
  • Monitor dpi: 画面の解像度。適当でいい。なお、 96dpi は、17インチディスプレイに 1280x1024 サイズ表示した場合の解像度。?ボタンを押すとその辺のパラメータが指定できる。


画像


なお、 SH01 の場合、 Eclipse からエミュレータの起動は不可。コマンドラインから起動する。
@以下は、AVD作成時に指定した名前を使用。
--cpu cortex-a8 は SH01 の場合に必要。

emulator @sh01 -qemu --cpu cortex-a8

同様に画面サイズを指定する場合、 -scale オプションを -qemu の前に付与する。

emulator @sh01 -scale 0.6 -qemu --cpu cortex-a8

エミュレータ起動後、 Home 画面が表示されたら、デバッグ実行を開始。
デバッグ実行する際のエミュレータを選択するには、 Debug Configurations を開き、Target タブの Deployment Target Selection Mode から指定する。

画像


うまくいけば、起動済みのエミュレータで Android アプリが実行され、Eclipse からはリモートデバッグが行われる。

デバッグ終了は基本的に Eclipse 側から中断させる。
エミュレータを終了させる必要はない。
毎回エミュレータを起動しなおすと時間がかかるので。

エミュレータについては、その他以下を参照。
http://developer.android.com/intl/ja/guide/developing/tools/emulator.html

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 1

なるほど(納得、参考になった、ヘー)

この記事へのコメント

この記事へのトラックバック