2012-07-16 16 views
5

Jestem nowy na Androida. Czy standardowa pamięć Java i narzędzia do analizy wydajności mogą być używane z systemem Android?Narzędzia do analizy pamięci/wydajności dla Androida

Dla np. Czy możemy stworzyć plik sterty i przeanalizować aplikację na Androida? Lub użyj aplikacji Eclipse TPTP do analizy pamięci/wydajności?

Jeśli nie można użyć standardowych narzędzi Java do tego celu, czy istnieją jakieś specjalne narzędzia Android do analizy pamięci i wydajności?

Odpowiedz

6

Jeśli korzystasz z Eclipse, DDMS powinien pomóc Ci w większości tego, czego potrzebujesz.

DDMS - Tracking memory allocation of objects

DDMS udostępnia funkcję śledzenia obiektów, które są przydzielone do pamięci i zobaczyć, które klasy i wątki są przydzielania obiektów. Pozwala to śledzić w czasie rzeczywistym, gdzie obiekty są przydzielane podczas wykonywania określonych czynności w aplikacji. Ta informacja jest cenna dla oceny użycia pamięci, która może mieć wpływ na wydajność aplikacji.

Aby śledzić alokacji pamięci obiektów:

na karcie Urządzenia wybierz proces, który chcesz włączyć śledzenia rozdziału. Na karcie Śledzenie alokacji kliknij przycisk Rozpocznij śledzenie , aby rozpocząć śledzenie alokacji. W tym momencie śledzone będzie wszystko, co robisz w aplikacji. Kliknij Uzyskaj Alokacje, aby zobaczyć listę obiektów, które zostały przydzielone od kliknięciu przycisku Rozpocznij śledzenie. Możesz ponownie kliknąć Uzyskaj alokacje , aby dołączyć do listy nowe obiekty, które zostały przydzielone . Aby zatrzymać śledzenie lub wyczyścić dane i zacząć od nowa, kliknij przycisk Zatrzymaj śledzenie. Kliknij określony wiersz na liście, aby uzyskać bardziej szczegółowe informacje, takie jak metoda i numer linii kodu, który przydzielił obiekt.

+1

Dodatkowo, jeśli korzystasz z mobilnego tworzenia stron internetowych, przydatny może być zdalny debuger Chrome. https://developers.google.com/chrome/mobile/docs/debugging –

+0

Wygląda na to, że nie możemy używać standardowych narzędzi Java do analizy pamięci, więc jak zauważyłeś, można użyć DDMS. http://android-developers.blogspot.fr/2011/03/memory-analysis-for-android.html – 18bytes

1

Na rynku dostępne są narzędzia do profilowania wydajności.

Ogólne przeznaczone narzędzie, takie jak aplikacja SystemPanel - https://play.google.com/store/apps/details?id=nextapp.systempanel.r1&hl=en. Wymienia wydajność, taką jak procesor, pamięć i sieć.

Profesjonalne narzędzie, takie jak TaskSpy - https://play.google.com/store/apps/details?id=com.skstudio.tooldelux. Zawiera listę wydajności całego systemu i umożliwia profilowanie jednego konkretnego działającego procesu. To, co naprawdę jest użyteczne, to to, że pozwala on na zobaczenie wydajności ze zdalnego komputera PC/mac/linux, podczas gdy docelowa aplikacja testowa może nadal działać na pierwszym planie na telefonie/tablecie - to nie jest uciążliwe.

2

JProfiler może czytać sterty Android wysypisk bezpośrednio, bez konieczności konwertowania ich do formatu JSE.

Nota prawna: Moja firma opracowuje JProfiler.

Powiązane problemy