のadbシェルログカット各行にログのパッケージ名を表示することはできますか?パッケージ名が
logcat -v長い
を使用
は空(PID後)正確にパッケージ名のフィールドを残します。
異なるタグを持つ特定のアプリケーションからログをフィルタリングしたいのですが、それが可能かどうか疑問です。
のadbシェルログカット各行にログのパッケージ名を表示することはできますか?パッケージ名が
logcat -v長い
を使用
は空(PID後)正確にパッケージ名のフィールドを残します。
異なるタグを持つ特定のアプリケーションからログをフィルタリングしたいのですが、それが可能かどうか疑問です。
logcat
レコードには「パッケージ名フィールド」がありません。したがって、フィルタリングする標準/組み込みの方法はありません。
のAndroid 7.0以降にバイナリ/パッケージ名で出力をフィルタリングするpidof -s
コマンドと組み合わせlogcat --pid
オプションを使用できますが
adb shell logcat --pid=$(pidof -s <package_name>)
これは私のスクリプトです。少し錆びているが、まだ働いている。
PID=`adb shell ps | grep -i <your package name> | cut -c10-15`;
adb logcat | grep $PID
は、実際に私はそれを再起動しますとき、そのプロセスの監視を維持するために多くの色を追加するためのPythonスクリプト、およびwhileループを持っていますが、私はあなたのポイントを得ると思います。
私は実際にこの使い方を知らないのです。コマンドラインからスクリプトを起動する方法も、Androidアプリでこれを使う方法もわかりません実際にこれが欲しい/必要がある)。私は現在、Runtime.getRuntime()で実行しています。exec( "su -c logcat -d -v long");私はパッケージ名を取得しません。 –
「カット-c10-15」は何ですか?ありがとう。 –
私はMarshmallowベースのデバイスでは動作しません: '$ adb -d shell logcat --pid = 6693 認識できないオプション - 使用法:logcat [options] [filterspecs]' ... ' --pid'は有効なオプションです。 – Jules
@Jules、 'logcat --pid'はNougatに導入されました –