2016-09-02 8 views
2

**\Android\sdk\platform-toolsディレクトリにadb logcatを使用しています。私はパッケージ名でログメッセージをフィルタリングしたいので、私のアプリケーションから来たログメッセージだけを見ることができます。私は使用している限り使用しましたパッケージ名でadb logcatフィルターを

adb logcat *:E 

メッセージはエラーレベルでのみ表示されます。それから、タグで物をフィルタリングしようとしました(アプリ/パッケージ名でフィルタリングする方法が他にない場合は、タグに名前を付けてフィルタリングすると思っていましたが)。

adb logcat TAG:E 

は何も除外していないようです。私は Android Studio user guideを見たことがありますが、それは私にはそれ以上はかかりませんでした。

私はAndroid Studioを使用しています。実際にAndroid Studioでデバッグするのではなく、アプリをクラッシュさせた後にアプリのログを見たいと思います。

ご協力いただきありがとうございます。

+1

「タグ付き」メッセージを表示するには、 'adb logcat -s TAG:*'を使用してください。 –

+0

@AlexP。それはタグのために働く!私はそれのような愚かな何かを見過ごしたと思った。ありがとう。 – Abby

+0

残念ながら、これらの回答はどちらも私にとっては役に立ちません。 – Abby

答えて

5

--pid=<pid>オプションを使用して、プロセスIDで出力するadb logcatをフィルタリングできます。

アプリのプロセスIDを取得するには、アプリがまだ動作している間にadb shell ps | FINDSTR <app name>(Windowsの場合)またはadb shell ps | grep <app name>(* nixとOSXの場合)を実行できます。

アプリがクラッシュした後にlogcat出力を取得しようとしているので、psコマンドは機能しません。一般的には、adb logcat | FINDSTR <search term>(Windowsの場合)またはadb logcat | grep <search term>(* nixおよびOSXの場合)を実行してlogcatの出力をフィルタリングできます。

このようにしても、デバッグメッセージに意味のあるタグを割り当てて、それをさらにフィルタリングできます。

希望すると便利です。

+0

ええと、 '' grep 'が内部または外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されません。' – Abby

+0

@Abbyこれらのコマンドはどこで実行していますか?どのオペレーティングシステムを使用していますか? –

+1

私はWindowsの8.1を使用していますが、 '** \ Android \ sdk \ platform-tools'(質問に記載)のコマンドを実行しています。 – Abby

関連する問題