クラッシュと関連するログを報告するためのアプリケーションを書いています。したがって、私のアプリケーションからtraces.txtおよび廃棄標識にアクセスしようとしていますが、エラーが発生しています:
03-25 09:48:46.220 W/System.err(10250): Java.io.FileNotFoundException: /data/tombstone/tombstone_00 (Permission denied)
traces.txtにアクセスできますが、トゥームストーンにはアクセスできません。
Your_sd_root_dir/toolsにあるadbツールを使用できます。このように使用します
./adb pull path_to_file location_to_save
「許可が拒否された」場合は、次の操作を実行できます。
adb Shell "cp /data/anr/traces.txt /storage/extSdCard/"
adb pull /storage/extSdCard/traces.txt
開発者オプションで完全なバグレポートをキャプチャできます( Androidドキュメント を参照)。バグレポートのZipファイルでは、/FS/data
にtombstones
およびanr
フォルダーがあります。
これは、ルート化されたデバイスとルート化されていないデバイスで機能します。
注:これはAndroidエミュレーターおよびルート化されたAndroidデバイスでのみ動作します。
最初に、ファイルが作成されているかどうかを確認できます。これを行うには
DDMS -> File Explorer -> data -> data -> (Your Package) -> files -> (Your File)
DDMSはEclipseの右上隅にあります。上記のパスにファイルが存在しない場合、ファイルは適切に作成されませんが、まだ存在する場合は、ファイルへのアクセス中にファイルに応じてパスを変更してください。 /data/data/(Your Package)/traces.txt
また、そのtraces.txtファイルをデスクトップにプルすることもできます。プルオプションは、DDMSの下のトップバーに表示されます。
これは私のためにそれをしました:adb pull "/data/anr/traces.txt"
adb Shell "cd /data/anr && cat traces.txt" > anr.txt
これにより、現在の設定ディレクトリのanr.txtにtraces.txtがコピーされます
DropBoxManagerクラスを介して必要なファイルを取得できるはずです http://developer.Android.com/reference/Android/os/DropBoxManager.html
廃棄ファイルもDropboxにコピーされます(少なくともエミュレーターでは)
Adb Shell data/system/Dropboxはlsを使用してDropbox内で生成されたファイルを表示し、Dropbox内でクラッシュ、anr、トレースファイルを取得します
それらにアクセスしたい場合は、フォルダーを作成し、そのフォルダー内のadbを開き、次のコマンドadb pull data/system/dropboxを使用します