web-dev-qa-db-ja.com

電話の再起動後にlogcatログを取得できますか?

Androidアプリケーションを長時間実行するサービスでテストしています。Eclipseを使用していて、USBコードを隣に座っている電話に接続しています。これは長時間継続するサービスなので、実行中に他の作業を行い、logcatログを時々チェックして、すべてが期待どおりに行われていることを確認します。

数分前、電話が再起動しているのに気づきました。奇妙なアプリケーションの動作を説明するので、これは以前に行われたと思います。私はすぐにEclipseに切り替えて何が起こったのかを確認し、再起動中にlogcatログが(どうやら)クリアされていることを発見しました。したがって、私のアプリがクラッシュした(そして電話をダウンさせた?!)かどうか、または電話と私のアプリをダウンさせた他の問題があったかどうかのログはありません。

とにかく何が起こったのかを知ることができますか?これは開発用の電話なので、それ自体で頻繁に再起動/クラッシュするのか、それともアプリの実行中にのみクラッシュするのかわかりません。これは、ファームウェアバージョン2.1-update1を実行しているMotorolaDroidです。

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

21
Scott Saunders

私はこれを行う方法を知りません。ただし、adbのlogcatをadb logcat -v time > logcat.txtで起動してから、アプリを再実行することもできます。 2回目にクラッシュした場合は、マシンのlogcat.txtの出力を確認できます。

17
eldarerathis

adb bugreportを使用できます。これには、偽の再起動に関する情報(カーネルパニック、最後のlogcatエントリなど)が含まれている必要があります。

ただし、注意が必要です。このツールは膨大な量の情報を出力するため、必要なものを見つけるために深く掘り下げる必要があります。

12
adamk

私もこの問題に遭遇しました。 logcatの出力をSDカード上のファイルに継続的に保存するアプリを作成できるはずです。 logcatの出力を表示するアプリが市場に出回っているので、アプリケーション内からアクセスできることはわかっています。

@djv、電話のルートまたは/ dataで/ logディレクトリを見つけることができませんでした。

0
Aaron C