0

I have an .apk package that i want to push it into android emulator and run in emulator and then receive events and debug message to show to user with C# console program.
How should i connect to android emulator for receiving debug message from C# code console? please help me. Thanks.

4

1 に答える 1

2

これは、どの程度の詳細が必要かによって異なります。logcat を表示したいだけですか、それとも完全なデバッグ情報 (ブレークポイントやデバイス統計など) を取得したいですか?

前者の場合:

adb (Android Debug Bridge) を使用できます。

ProcessStartInfo adbStart = new ProcessStartInfo(@"your_path\android-sdk\platform-tools\adb.exe", "-e logcat *:D");
adbStart.UseShellExecute = false;
Process adb = new Process() { StartInfo = adbStart };
adb.Start();

のコンストラクターの最初のパラメーターを、Android SDKadbStartのフォルダーにある adb.exe へのパスに置き換えます。platform_tools2 番目のパラメータはコンソール フラグです。上記のコードは、フラグを使用してエミュレーターにのみ接続するように adb を強制し、-eフラグを使用してメッセージのみをデバッグするフィルターを強制します*:D*をアプリに関連するフィルター (パッケージ名など) に置き換える必要があります。adb helpさまざまなフラグに関する情報については、コンソールに入力するだけです。

プログラムはコンソールで実行されるため、adb の標準出力はコンソールに送信する必要があります。そうでない場合は、StreamReaderatを使用しadb.StandardOutputて adb の出力を読み取ります。adb.WaitForExit()adb が終了するまでスレッドをブロックするために使用できます。

後者の場合:

これを行う公式の方法は、Dalvik Debug Monitor (android_sdk\tools\ddms.bat) を使用することです。Android には C# の公式サポートがないため、デバッグ モニターは Java で作成され、ライブラリも同様です。代わりが見つかりません、すみません。Java は C# に非常に似ていますが、この特定のプロジェクトの言語をジャンプできますか?

于 2013-08-08T15:12:49.123 に答える