私はAndroidプログラミングの初心者であり、アプリのデバッグ方法を学びたいと思っていました。 LogCatにLog.i | d | vの呼び出しが表示されないようです。
これが私が使用しているコードです。ご覧のとおり、LOG_TAG定数を定義しましたが、LogCatで見つけることができないようです。また、Android.util.Logをインポートし、AndroidManifestで「debuggable」がTRUEに設定されていることを確認しました。
私はまたチェックしました http://developer.Android.com/reference/Android/util/Log.html この問題を解決する運がない。
私は何を間違えていますか?私は適切な場所を見ていますか?私はDDMSとデバッグパースペクティブを使用してみましたが、運はありませんでした。この初心者への助けは大歓迎です。ありがとう。
私の環境:Windows XP IDE = Eclipseバージョン:3.6.1、ビルドID:M20100909-0800エミュレーター= Android sdk 2.1 api 7を指すようにする
//いくつかのLog.i呼び出しを含む非常に基本的なHELLO Worldコード
import Android.app.Activity;
import Android.os.Bundle;
import Android.util.Log;
public class debugger extends Activity {
private static final String LOG_TAG = "debugger";
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
Log.i(LOG_TAG, "line 13");
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.i(LOG_TAG, "CREATING NOW");
}
}
Eclipseを使用する場合、DDMSパースペクティブで、正しいデバイス(適切にはemulator-xxxx)が選択され、強調表示されていることを確認してください。その場合にのみ、logcatビューでlogcat出力を取得できます。
また、Androidプラグインは少し奇妙で、時々logcatビューの最後の行のみを表示します。これが発生した場合は、ログをクリアしてみてください。その後、すべてのログエントリを再度取得する必要があります(とにかく動作します)。
私は上記のことをすべて行いましたが、何が間違っているのかわかりませんでした。
テスト:
adb logcat
私のエントリがlogcatの事実であることがわかりましたが、adtの奇妙なものでした。
修正:
Eclipseを再起動
これがそれを修正した唯一のものでした。
Android Studioを使用しても同じ問題が発生し、LogCatの右上隅の選択ボックスでNo Filters
を選択して回避することができました。これにより、バックグラウンドでAndroidのすべてのログを受信し始め、LogCatに欠落しているLog呼び出しを含めます。
Eclipseを再起動すると、ログcatが表示されます。
Android.util.Logの代わりにcom.sileria.Log(ライブラリプロジェクトから)を自動的にインポートしていることがわかりました。後者は正しいものです。インポートも確認してください。
コマンドadb usb
を使用してadbサービスを再起動する必要がありました
これに先立ち、すべてのログを取得してデバッグできましたが、独自のログ行を取得していませんでした(はい、アプリケーションに関連付けられたシステムログを取得していました)。
EclipseはAndroidアプリの起動時に例外をスローすることがあり、LogCatの更新が停止することに気付きました。 Eclipseを再起動するだけで修正しました。あなたがそれを試したかどうかはわかりませんし、最適な解決策とはほど遠いことはわかっていますが、Eclipseプラグインにはまだいくつかのバグがあると思います。
最も簡単な方法:
あなたのlogcatウィンドウでチェックイン-上右隅の一時停止ボタン|| (新しいlogcatメッセージの受信を一時停止します)
わずかなクリック+最終的にEclipseを再起動します(通常、私の場合は機能します)
ログが表示されない理由はいくつかありますが、そのほとんどを以下に示します。ほとんどの理由を確認するための手順を次に示します。
Android Studioの場合:右向きの緑色の矢印をクリックして、ロギングを再開します。表示されていない場合は、>>アイコンをクリックして探します。
タスクマネージャーに移動し、adb.exeプロセスを強制終了してください。 Eclipseを再起動します。
または
adb kill-serverを試し、次にadb start-serverコマンドを試してください。
クイックフィックス
Eclipseを再起動するだけです
完璧に動作します。
もう1つ注意すべき点があります。
Logcatの右上には、タイプ別にメッセージをフィルタリングするためのドロップダウンテーブルがあります。探しているレベルにあることを確認してください(アサートレベルにある場合、logcatは空のままになる可能性があります)。
おそらくそれは正しくなく、少し長くなっていますが、これを使用してこの問題(Android Studio)を解決しました。
System.out.println("Some text here");
このような:
try {
...code here...
} catch(Exception e) {
System.out.println("Error desc: " + e.getMessage());
}
私はAndroid-Eclipseの初心者でもあります。 EclipseでLogCatメッセージを表示するために必要なことは次のとおりです。1:logcatメッセージが呼び出されるクラスにこれを追加します。private static final String TAG = "MyActivity"; (ドキュメントごと ここ )
2:このLog.i(TAG、 "inLayout-finished");を追加します。メッセージを表示したい場所
上記が機能しない場合は、Eclipseをシャットダウンして再起動し、プロジェクトを再実行します。
その後、動作するはずです。
私はそのような場合に数時間を費やしました。タッチキーのログのみが表示されました。これ以上何もない。問題は... smarthphoneでした。再起動後はOKでした。ケーブルを外すと問題が返されました。もう一度再起動する必要がありました。 Android USB通信は適切に設計されていないようです。
Eclipseの場合:1)ddmsパースペクティブに移動します。 2)正しいデバイスが選択されていることを確認してください。 3)すでに選択されており、ログが表示されていない場合は、ABDを再起動します。 *これが解決することを願っています。
私にとって最良の解決策はadbサーバーを再起動(AndroidスタジオでADB統合を有効にしている間-ツール-Android-チェック済み) 。これをすばやく行うために、adbr.bat
ディレクトリ内にAndroid-sdk\platform-tools
ファイル(adb.exe
が存在する場所)を次のように作成しました。
adb kill-server
adb start-server
PATHシステム変数にこのフォルダーがあるため、Androidスタジオからadb
を再起動する必要があるときは常に、ターミナルadbr
にのみ書き込みができ、完了です。
これを行う別のオプションは、Android Device Monitor inDevicesタブ-右矢印をクリックした後のメニュー-adbのリセットです。
Logcatの検索ボックスに検索語を入力するのを間違えました。削除するのを忘れたため、新しいログを見ることができませんでした。私の検索語と一致せず、表示されなかったため。
私はこの問題を経験していましたが、ログコールをハンドラーに移動するまで何も機能しなかったようです。現在、どこにいても常に機能します。
SDK 4.0.3を使用すると、デバッグ構成>プロジェクト>ターゲットで明示的に選択する必要があります。そうしないと、Eclipse Indigo(3.7)を使用して表示されなくなります。もちろん、Eclipseの再起動が続きます。
私の場合、この行を削除する必要がありました。
<application
Android:debuggable="false" <!-- Remove this line -->
..../>
マニフェストファイルのApplicationタグから。
Logcatでも簡単なログ出力を見るのに問題がありました。最新のJDKをインストールすると、問題が解決しました。新しい開発マシンをセットアップするだけで、JREのみがインストールされ、JDKがインストールされました。
logCatが再び起動したら、アプリを強制終了します...
これを強制的に閉じるために使用します:D
setContentView(BIND_AUTO_CREATE);
他の答えはどれもうまくいきませんでしたが、これはうまくいきました:
ワークスペースからプロジェクトを削除してから、プロジェクトフォルダーからドット(.settings、.projectなど)で始まるものをすべて削除しました。その後、投影を再インポートしました。いくつかの設定とブレークポイントがありませんが、少なくとも動作します。
私の場合、文字列に名前を追加する必要がありました。最初の例では、括弧の間にスペースがありました
private static final String TAG = " ";
しかし、名前を追加した後は完全に機能しました。
private static final String TAG = "oncreate";
「adb usb」を使用してADBサービスも再起動し、問題を修正しました。実際、私の活動の1つだけがもうログを記録しませんでした。他のすべてがログを記録しました。 adbを再起動すると、すべてが再びチャームのように機能します。別の解決策を探している他の人々のために:adb kill-server、CLIのadb start-serverはしばしばあなたの問題も解決します。
私はこの問題を抱えており、スペースのないString TAGを修正しました:
"my tag" //ショーに注目
"my_tag" //大丈夫
時々、問題はPC、IDE、ADBなどではなく、それはデバイスから発生 ADBにログを送信しないので、前述のすべての方法を試してもまだlogcatは空ですデバイスを再起動して再試行してください。上記のすべての方法を試しましたが、どちらも機能しませんでしたが、携帯電話で再起動した後、logcatは魔法のように機能しました