iアプリのデバッグメモ

[目次|携帯Javaのページ ] Time-stamp: "2006/01/31 Tue 07:55 hig"

手がかりになる情報

プログラムの進行についての情報

Canvas の振る舞いを見て考えるより, 変数の値や, プログラムのどこまで進んだかを 示すメッセージを見て考える方が, 問題の所在が分かりやすいです. 挙動がおかしなときには, 要所で, メッセージや変数の値を出力させるといいでしょう.

例外についての情報

実行時になんらかの例外で異常終了する場合, その例外についての情報を得ることが有益です. まず. throw-chatch で囲みます. Exception e に対して, e.toString() で例外の簡単な内容が分かります. また, e.printStackTrace() では, どのメソッドからよばれたどのメソッドの中で その例外が発生したかがわかります. catch のなかで, これらを表示するようにします. StackTrace.print

情報の表示の方法

System.out.println()

CLDC DoJa でも System.out.println が使えます. エミュレータではコンソールに, 実機(携帯電話)ではトレース情報に出力されます. 挙動がおかしなときには, 要所で, メッセージや変数の値を出力させるといいでしょう.

トレース情報

ADF設定で AppTrace=Y と設定すると, 実機で実行したときに, エラー出力など, エミュレータのコンソール出力に相当するものが保存されます. そして(携帯電話の機種によるが) iアプリ>トレース情報 のようなメニューから見ることができます.

Graphics.drawString や Canvas.setSoftKeyLabel などの利用

異常終了する場合以外は, Graphics.drawString で Canvas に情報の文字列を描画したり, Canvas.setSoftLabel(), Panel.setSoftLabel() で ソフトキーラベルに情報をセットしたりするという方法も使えます.

事例別にした方がわかりよい?