Android Dokumentation (http://developer.android.com/reference/android/util/Log.html) sagt:Sind die Debug-Logs von Android zur Laufzeit wirklich gelöscht?
Ausführlich sollte nie außer während der Entwicklung in eine Anwendung kompiliert werden. Debug-Protokolle werden zur Laufzeit kompiliert, aber entfernt. Fehler-, Warn- und Info-Logs werden immer gehalten
Ich habe gerade einen Test gemacht. In meiner Tätigkeit schrieb ich:
private static String test(String what) {
Log.e("test", "I am called with argument: " + what);
return what;
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Log.v("test", "log level: " + test("v"));
Log.d("test", "log level: " + test("d"));
Log.i("test", "log level: " + test("i"));
Log.w("test", "log level: " + test("w"));
Log.e("test", "log level: " + test("e"));
}
ich mein Projekt als apk-Datei exportiert, dann installierte ich diese apk auf meinem Handy. Ich habe diese Anwendung auf meinem Handy ausgeführt, dann habe ich mir Protokolle angeschaut. Dort sah ich, dass der Funktionstest alle fünf Mal aufgerufen wurde und alle fünf Aufrufe von Log.Something-Funktionen dazu führten, dass der Text in Protokolle geschrieben wurde.
So sind Log.d-Aufrufe zur Laufzeit tatsächlich abgestreift?
Kurz gesagt erreicht die Antwort nein zu sein scheint. Das Thema wird hier ausführlich besprochen http://stackoverflow.com/questions/2446248/remove-all-debug-logging-calls-before-publishing-are-there-tools-to-do-this/2466662#2466662 – gpasci
So ist ein Fehler in der Dokumentation? – user983447