Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do you save an Android application log to a file on a physical device?

I want to know why my Android application service occasionally goes down (whether it's the OS killing it or a crasch) and therefore I want to save a log file on my phone. How can is this be done?

like image 452
Christian Avatar asked Oct 24 '22 19:10

Christian


1 Answers

Basically you got two possibilities and normally the first one should help you finding already the reason for the crash without coding anything since the logcat should show up the error occurred that led to the service end.

1) Using the logcat command

Having Log.i("your tag", "output text") you can intercept those messages using the Android Eclipse plugin or by calling adb logcat from your command line, having your Android device connected and your service running.

See also http://developer.android.com/guide/developing/tools/adb.html#logat

2) Writing to stdout

Using the System.out.println("...") command you can configure your device to write the stdout into a file:

adb shell stop
adb shell setprop log.redirect-stdio true
adb shell start

See also http://developer.android.com/guide/developing/tools/adb.html#stdout

Obviously you have to spread a lot of debug output messages over your application, mainly at the critical points.

Good luck for finding the error!

like image 77
Lars Blumberg Avatar answered Oct 27 '22 11:10

Lars Blumberg