Chciałem wydrukować wartość zmiennej na konsoli w celu debugowania, ale system.out.println nie działa.
android
android-logcat
SuperCop
źródło
źródło
Odpowiedzi:
System.out.println
iLog.d
oba idą do LogCat, a nie do konsoli.źródło
Okno-> Pokaż widok-> Inne… -> Android-> LogCat
źródło
Jestem nowy w programowaniu na Androida i robię to:
1) Utwórz klasę:
Po zakończeniu projektu usuń klasę.
2) Aby wydrukować wiadomość do LogCat napisz:
Debug.out ("something");
3) Utwórz filtr w LogCat i wpisz „info” w polu „by Log Tag”. Wszystkie Twoje wiadomości zostaną zapisane tutaj. :)
Wskazówka: utwórz kolejny filtr, aby odfiltrować wszystkie błędy i ułatwić debugowanie.
źródło
Pisanie poniższego kodu w celu wydrukowania czegokolwiek w LogCat działa doskonale !!
int score=0; score++; System.out.println(score);
wypisuje wynik w LogCat. Spróbuj tego
źródło
Myślę, że toast może być dobrą metodą pokazania wartości zmiennej!
źródło
Ok, Toast nie jest skomplikowany, ale potrzebuje obiektu kontekstowego do działania, może być
MyActivity.this
, wtedy możesz napisać:Toast.maketext(MyActivity.this, "Toast text to show", Toast.LENGTH_SHORT).show();
Chociaż Toast jest zasobem interfejsu użytkownika, to użycie go w innym wątku innym niż wątek ui spowoduje wysłanie błędu lub po prostu nie zadziała. Jeśli chcesz wydrukować zmienną, umieść zmienną
name.toString()
i połącz ją z tekstem, który chcesz w parametrze maketext String; )źródło
toast to zły pomysł, jest zbyt „skomplikowany”, aby wydrukować wartość zmiennej. użyj log lub sop i jak już wspomniano, ich wyjście trafia do logcat. ma to sens tylko wtedy, gdy chcesz ujawnić te informacje użytkownikowi końcowemu ...
źródło
Jeśli testowany kod jest stosunkowo prosty, możesz po prostu utworzyć zwykły projekt Java w Eksploratorze pakietów i skopiować kod, uruchomić go i tam naprawić, a następnie skopiować z powrotem do projektu systemu Android.
Fakt, że System.out jest przekierowywany, jest dość irytujący, jeśli chodzi o szybkie testowanie prostych metod, ale jest to najłatwiejsze rozwiązanie, jakie znalazłem, zamiast konieczności uruchamiania emulatora urządzenia, aby sprawdzić, czy wyrażenie regularne działa.
źródło
Przy okazji, jeśli nie wiesz jaka jest dokładna lokalizacja twojego JSONObject w twoim JSONArray sugeruję użycie następującego kodu: (założyłem że "jsonArray" jest twoją główną zmienną ze wszystkimi danymi i szukam dokładnego obiekt wewnątrz tablicy z funkcją equals)
JSONArray list = new JSONArray(); if (jsonArray != null){ int len = jsonArray.length(); for (int i=0;i<len;i++) { boolean flag; try { flag = jsonArray.get(i).toString().equals(obj.toString()); //Excluding the item at position if (!flag) { list.put(jsonArray.get(i)); } } catch (JSONException e) { e.printStackTrace(); } } } jsonArray = list;
źródło