Hello, Android! (5)
以下の文章はこちらを参考に翻訳したものです。
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
プロジェクトのデバッグ |
package com.android.hello; import android.app.Activity; import android.os.Bundle; public class HelloAndroid extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Object o = null; o.toString(); setContentView(R.layout.main); } }
コード中でNullPointerExceptionを発生させるシンプルなものです。アプリケーションを再起動すると、最終的に以下のような画面が表示されます。
“Force Quit(訳注1)”を押してアプリケーションを強制終了し、エミュレータウィンドウを閉じてください。
エラーを特定するために、ソースコード中の”Object o = null;”の行にブレークポイントを置いてください(ソースコードの隣のマーカーバーをダブルクリック)。そして、メニューの 実行(Run) >ヒストリーのデバッグ(Debug History) > Hello, Android を選択し、デバッグモードで実行してください。アプリケーションはエミュレータ上で再起動しますが、今回はセットしたブレークポイントに到達した段階で処理を中断します。どんなアプリケーションであっても、Eclipseのデバッグパースペクティブでコードをステップ実行することができるのです。
Eclipseなしでプロジェクトを作成 |
EclipseのAndroidプラグインは、実は単にAndroid SDKを含めたツール一式のラッパーなのです(エミュレータやaapt, adb, ddmsなどのツールについては、他の箇所でドキュメント化されています)。このため、”ant”のビルドファイルなど他のツールで、Androidツールをラップすることもできます。
Android SDKには”activitycreator.py”というPhthonスクリプトがあり、ant用のbuilld.xmlと同様にプロジェクトの全ソースコードとディレクトリのスタブを作成するのに使えます。このスクリプトを使用すれば、コマンドラインからプロジェクトを構築したり、好きなIDEと統合したりすることができます。
例えば、Eclipseで作ったものと似たようなHelloAndroidプロジェクトを作成するには、このコマンドを実行してください。
activitycreator.py --out HelloAndroid com.android.hello.HelloAndroid
プロジェクトをビルドするには、“ant”を実行します。上記コマンドの実行が成功した後、”bin”ディレクトリの下に、HelloAndroid.apkというファイルが作成されているはずです。.apkファイルはAndroidパッケージのことであり、”adb”ツールを使ってエミュレータ上にインストールし実行することができます。
このツールの使用方法の詳細は、前述したドキュメントを参照してください。
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
(訳注1) 原文の画面上では”Force close”ボタンなのですが、文中では”Force Quit”となっています。バージョンアップした際の修正漏れですかね。
やっとHello Androidの章が終わりました。翻訳に思ったよりも時間がかかって大変です(T−T)