| << 目次を表示 >> ページ位置: プログラムの動作解析 > ビルドとデバッグ > 動作解析の設定 > デバッグ > Androidのデバッグ | 
Androidのデバイスやエミュレータを利用している場合に、そのAndroidアプリケーションをデバッグできます。この場合に、ローカル環境・リモート環境は32ビット環境・64ビット環境のどちらでも実行可能です。

必要なシステム
リモート(デバッグ対象)側の条件は次の通りです。
ローカル(デバッグ呼び出し)側の条件は次の通りです。
動作解析の設定の内容
| 項目 | 説明 | 
| デバッガ | 「Java (JDWP)」 を選択して下さい。 | 
| 実行 | この項目を選択してください。 | 
| 既定のディレクトリ | これらの情報は参照されませんので、設定不要です。 | 
| アプリケーションパス | |
| コマンドラインの引数 | |
| 実行前にビルド | |
| コンソールを表示 | |
| 調査用メッセージの表示 | |
| 追加設定の内容 (Connection) | |
| Port | ADBやその他の手段で、Android上の仮想マシン(VM)に接続するためのポートを指定します。 (参考:Androidのデバッグ) | 
| Host | リモート側のマシンを指定します。 (既定値: localhost ) もし、Androidがネットワークマシン上のエミュレータデバイスで動作している場合には、そのマシン名を指定します。 既定の設定では、Enterprise Architectが実行されているのと同じマシン(localhost)の、指定されたポートに接続します。 | 
| Source | Javaのclasspathにあたるディレクトリを指定します。 対象のディレクトリが複数ある場合には、セミコロンで区切って設定します。以下は指定の例です。 
 c:\myapp\src;c:\myserver\src 
 少なくとも1つのディレクトリを指定しなければなりません。 デバッガがブレークポイントに達すると、このSourceとして指定されたパスから、該当のソースファイルを探索します。 | 
| Logging | ログ機能を有効にするかどうかを指定します。 設定可能な値は、true,false,1,0,yes,no です。 | 
| Output | ログファイルの出力先となるファイルを、フルパスで指定します。 指定されたディレクトリが実行時に存在しない場合には、ログファイルは出力されません。 このログファイルには、通常はデバッガとVMの間でやりとりされるバイトコードが含まれます。 | 
| Platform | Androidのシナリオで動作している場合には、android を指定します。それ以外の場合には Java を指定します。 | 
デバッグのためのポート設定 - ポート転送 (ローカルマシンでのデバッグの場合)
Enterprise Architectのデバッガは、同時に1つのVMのみがデバッグできます。また、VMとの通信のために、1つのポートを利用します。デバッグするアプリケーションとの通信ポートは、ADBを利用して設定できます。
デバッグ前に、対象のデバイスで一度アプリケーションを実行しておきます。アプリケーションを実行したら、次のコマンドを実行してプロセスIDを調べます。
adb jdwp
表示される最後の番号が、最後に実行したアプリケーションのプロセスのIDです。次のように、このプロセスIDをデバッガがVMに接続するために利用します。
デバッグのためのポート設定 - ポート転送 (リモートデバッグの場合)
基本的には、ローカルマシンでのデバッグの場合と同様の手順になります。ただし、上記の adb のfowardコマンドがローカルマシンのポートのみがリッスン対象として指定可能なため、転送設定を実行すると接続が拒否された旨のエラーが表示されます。
そのため、リモートデバッグを実現するためには、ローカルマシンの特定のポートとリモートマシンのポート間を転送するためのポート転送ツールが必要になります。このポート転送を実現するツールには、有料・無料を含めてさまざまなツールがあります。
このポート転送のツールを活用しないと、リモート環境に対するデバッグは実現できません。