Podczas pisania aplikacji zetknąłem się z potrzebą sprawdzenia następujących parametrów:
- ilość pamięci zajmowanej przez aplikację,
- sprawdzenie wycieków pamięci (memory leaks),
- sprawdzenie czasu wykonywania operacji.
To wszystko miało na celu optymalizację aplikacji i usunięcie potencjalnych błędów jeszcze przed wysłaniem aplikacji do certyfikacji.
Ten artykuł pomoże zapoznać się Tobie z mechanizmami dostępnymi w środowisku Eclipse. Należy potraktować to bardzo poważnie 🙂
Memory Usage
Aby sprawdzić wykorzystanie pamięci i ewentualne jej wycieki, postępuj wg poniższych wskazówek.
Z menu Run naszego projektu wybieramy opcję Run Configurations i zaznaczamy opcję Check memory usage.
Po zbudowaniu projektu i uruchomieniu go w emulatorze będą zbierane informacje o użyciu pamięci. Po wyłączeniu aplikacji w zakładce Problems ukażą się wykryte problemy:
Pewne wartości w niektórych kolumnach zostały przeze mnie ocenzurowane, aby nie zdradzić nazwy aplikacji… 🙂 Kolumna Resource wskazuje nazwę pliku, w którym występuje problem, a kolumna Path folder informuje o folderze, w którym znajduje się plik.
Kolumna Type wskazuje typ błędu, gdzie wartość Memory Leak może oznaczać wyciek pamięci, czyli zasób tworzony przez nas, nie został poprawnie zwolniony.
Poniżej zaznaczyłem podsuwanie wykorzystania pamięci przez naszą (moją :)) aplikację, gdzie poszczególne wiersze oznaczają odpowiednio:
- średnie zużycie pamięci,
- maksymalne zużycie pamięci.
Osobiście nie che mi się wierzyć w te wartości. Bardziej byłbym skłonny przyjąć, że są to kB, niż B, ale nie mi oceniać…
W kolejnej części artykułu opiszę profilowanie aplikacji pod względem czasu wykonywania poszczególnych operacji.
U mnie to jednak jakoś nigdy nie działa :/ Chyba wina Win 7 64x