2016-05-18 13 views
0

私のアプリケーションでは、これを行うために新鮮なログ・キャット・ログを読み込むたびに、以下に述べるadbコマンドを使用します。Android:adb logcat -cの影響は何ですか?

  1. ADB logcatは-v時間*を-d:E

    - >これは、最新のログを提供します。

  2. のadb logcat

    -c - >これは、すべてのログをクリアして、私は再び第一コマンドを実行すると、古いログは第二で削除済みとして、私は(唯一の現在のログを取得します

存在しますコマンド)

これは私がプログラムで(私のアプリケーションが署名されているので)一日を通してこれをやります。

"adb logcat -c"コマンドを使用すると、すべてのログが完全に削除されますか?デバッグの目的で古いログにアクセスしたい場合は、古いログにどのようにアクセスできますか?彼らはアクセスできるだろうか?

ここに何か間違っていると私にお勧めします。

ありがとうございました!

答えて

1

Logcatログバッファは、メモリ内のローテーションリングバッファです。バッファサイズは通常256KBです(64KB〜16MBに設定できます)。

リングバッファとして、バッファがいっぱいになると、最も古いログエントリが削除され、新しいログが保存されます。

あなたの質問1のため、はい。 logcat -cはすべてのログを永久に削除します。

質問2については、GoogleがAPI 16(JellyBean)の後にアプリケーションのREAD_LOGS権限を削除したので、ルートデバイスまたはシステムアプリでない場合は、あなたはできません。それ以外の場合は、システムのアクセス権があれば、デバイス起動時にバックグラウンドサービスを起動してlogcatログファイルを取得することができます。

これが役に立ちます。

+0

現在のログを常に取得する方法はありますか? – Pampapathi

関連する問題