2015-10-16 30 views
5

Znam podstawy debugowania i wiem, że mogę dodawać zegarki do zmiennej, która zatrzymuje wykonywanie programu w danym stanie. Ale nie chciałem zatrzymywać programu za każdym razem, gdy potrzebuję zobaczyć wartość zmiennej. Ani nie chcę rejestrować wartości każdej odpowiedniej zmiennej w logcat ... Chciałem tylko zobaczyć ich wartości, tak jak robię w punktach przerwania, tylko w środowisku wykonawczym.Czy można oglądać zmienne w czasie wykonywania?

Programuję Androida, w Android Studio.

Dzięki za pomoc!

+0

nie ma sensu log przerwy myślę, że nie jest możliwe lub trzeba umieścić gdzieś TextView i aktualizacji, które cenią czas pracy, który pokaże Ci zmienną value..but dlaczego tego typu wymogu? – Pavan

+1

Dzięki. To rodzaj osobistego podejścia do debugowania, chciałem tylko wiedzieć, czy to było możliwe. Jak już powiedziałem, przypisywanie dziennika do wszystkich zmiennych, które muszę znać, może być stresujące w napiętym harmonogramie. Plus Właśnie dostałem się do mojej obecnej pracy i musiałem wesprzeć oprogramowanie, którego nie zbudowałem ... IMO podejście, które sugerowałem, może być produktywne. Nie jestem starszym profesjonalistą, więc może się mylę. – Ortiz

Odpowiedz

6

Po zatrzymaniu programu w punkcie przerwania kliknij ikonę po prawej stronie menu debuggera (patrz rysunek poniżej). W tym oknie możesz wpisać metody lub nazwy zmiennych i sprawdzić, jakie one będą.

enter image description here

Można wpisać dowolne wyrażenie chcesz (tak długo, jak to jest w zakresie, w którym złamał kod) i wejście jakieś stałe wartości lub przedmiotów wszystko bez ponownie uruchomiony projekt.

enter image description here

Aby dodać zmienną do listy obserwowanych

Rozpocznij umieszczając punkt przerwy w klasie, gdzie tylko chcesz oglądać określony zmienną. Uruchom kod i gdy dotrze do punktu przerwania z ramki okna Zmienne, powinieneś zobaczyć wszystkie dostępne zmienne. Po prostu wybierz ten, który chcesz obejrzeć, a następnie kliknij prawym przyciskiem myszy i wybierz "Dodaj do zegarków" z menu rozwijanego.

enter image description here

Przechowywać debugowanie i powinieneś zobaczyć zmienną z aktualizacji ramy okiennej Zegarki razie potrzeby na podstawie kodu.

enter image description here

+2

Dzięki za odpowiedź. Wiem o oceniającym wyrażenie, chciałem po prostu użyć go, gdy program jest uruchomiony, a nie zatrzymany w punkcie przerwania. Takie podejście chciałem przejść. Przepraszam, jeśli nie byłem wystarczająco jasny. – Ortiz

+0

Zaktualizowałem moją odpowiedź, aby uwzględnić zmienne obserwacyjne. Obawiam się, że jest tak blisko, jak będziesz w stanie osiągnąć to, czego szukasz. – vguzzi

+0

Mój debugger pokazuje mi tylko tę zmienną. Nie przedstawiono żadnych zmiennych metod. jakiekolwiek sugestie dlaczego? – 4ndro1d