2013-05-27 16 views
6

Zauważyłem, że ActionBarSherlock biblioteka wyświetla wiele informacji debugowania w mojej aplikacji, po prostu dlatego, że istnieje wiele linii tak:Usuwanie dzienników ActionBarSherlock gdy BuildConfig.DEBUG

if (BuildConfig.DEBUG) 
    Log.d(TAG, "[onCreatePanelMenu] featureId: " + featureId + ", menu: " + menu); 

szczęście dziennika wyświetlane tylko na moim urządzeniu debugującym. Dzięki oświadczeniu if.
Dużym problemem jest to, że chciałbym usunąć cały dziennik na urządzeniu debugującym, aby skupić się na moim kodzie.

Znam 2 rozwiązania tego uniknąć:

  1. Delete/edytować wszystkie dzienniki w bibliotece
  2. Przesączyć logcat w Eclipse.

Czy jest prostszy sposób, aby to osiągnąć i "sfałszować" bibliotekę, mówiąc, że nie znajdujemy się na urządzeniu do debugowania? Naprawdę chciałbym omijać powyższe 2 rozwiązania.

+0

Próbowałeś ustawić BuildConfig.DEBUG = false? Nie jest dobrą praktyką zmiana pliku BuildConfig, ale powinno być w porządku podczas rozwoju – Ethan

+0

jakiej wersji Sherlocka masz? Nie mogę znaleźć żadnego odniesienia do BuildConfig.DEBUG – Blackbelt

+0

@blackbelt wystarczy spojrzeć tutaj: https://github.com/JakeWharton/ActionBarSherlock/blob/master/actionbarsherlock/src/com/actionbarsherlock/ActionBarSherlock.java –

Odpowiedz

0

Wiadomości do debugowania będą wyświetlane tylko wtedy, gdy aplikacja będzie działać w trybie debugowania. Oznacza to, że jeśli nie zdefiniowałeś w AndroidManifest.xml, to pojawi się tylko w kompilacjach debugowania.

Po utworzeniu kompilacji produkcyjnej nie pojawi się.

Można to sprawdzić, ustawiając flagę debuggable w pliku androidmanifest ręcznie i uruchamiając ją. Zobacz także http://developer.android.com/guide/topics/manifest/application-element.html, aby uzyskać szczegółowe informacje na temat opcji w pliku manifestu.

To powiedziawszy, pewnie ci to nie pomoże, ponieważ Twoja aplikacja nie działa w trybie debugowania i nie możesz podłączyć debuggera.

Można zamienić wszystkie odniesienia do BuildConfig.DEBUG na coś takiego jak your.package.name.SherlockConfig.DEBUG i samodzielnie zdefiniować zmienną debugowania. w ten sposób możesz samodzielnie włączyć i wyłączyć debugowanie ActionbarSherlock.

4

Otwórz projekt ActionBarSherlock
Otwarty na pliku /gen/com/actionbarsherlock/BuildConfig.java
i ustawić DEBUG = false

+0

Będąc plikiem generowanym automatycznie i automatycznie generowanym, to niestety nie pomaga. –

+0

@ Gábor nie odbudowuje projektu biblioteki po wprowadzeniu zmian – valerio

Powiązane problemy