Anmelden von "Java Library Code" -Libs für Android-Anwendungen

8

Ich folge dem Rat < Ein Android-Gerät (keine Anwendung!) unabhängigen Bibliothekscode für meine Android-Apps in einem separaten "Java Library Code" -Projekt zu implementieren. Dies erleichtert das Testen für mich, da ich das Standard-Maven-Projektlayout, den Spring-Test-Support und das Continuous-Build-System so verwenden kann, wie ich es gewohnt bin. Ich möchte das nicht in meinem Android App-Projekt mischen, obwohl dies möglich ist.

Ich frage mich nun, wie man das Logging in dieser Bibliothek implementiert. Da diese Bibliothek auf dem Android-Gerät verwendet wird, möchte ich mit android.util.Log gehen. Ich habe meinem Projekt die Folge-Abhängigkeit hinzugefügt, um die fehlenden Android-Pakete / Klassen und Abhängigkeiten zu erhalten:

%Vor%

Aber diese Bibliothek enthält nur die Stub-Methode (ähnlich der android.jar in der android-sdk) und verwendet daher android.util.Log in

%Vor%

beim Ausführen meiner Komponententests. Wie implementiere ich die Protokollierung, die auf dem Android-Gerät funktioniert, aber nicht außerhalb fehlschlägt (ich erwarte nicht, dass es funktioniert, aber es darf nicht fehlschlagen)?

Vielen Dank für eine Beratung   Klaus

Für den Moment gehe ich mit der Problemumgehung, um die Ausnahme außerhalb Android zu fangen, aber hoffe, dass es eine bessere Lösung gibt.

%Vor%     
FrVaBe 15.02.2011, 09:46
quelle

1 Antwort

6

Diese zwei Links von GrepCode (1 , 2 ) scheinen darauf hinzuweisen, dass der Standard-Handler von java.util.Logging auf android delegiert auf android.util.Log, also in Ihrem Bibliothek sollten Sie nur java.util.logging apis verwenden können.

Ich konnte keine weitere Dokumentation zu diesem Verhalten finden

    
Jörn Horstmann 17.02.2011, 16:00
quelle

Tags und Links