Działanie aplikacji na Androidzie

System Android niezaprzeczalnie zdominował rynek mobilny: statystyki jasno pokazują ponad 80-procentowy udział oprogramowania na wszystkich urządzeniach mobilnych. W związku z nieustannie rosnącą popularnością Androida zwiększa się też ilość oferowanych przez producentów aplikacji. Co się dzieje po uruchomieniu takiego programu? Najpierw tworzy się przypisany do niego proces, lub czasem kilka procesów. A czym jest proces? To zbiór instrukcji i obszar pamięci niezbędny do działania naszego programu. Większość procesów jest w stanie funkcjonować w tle, gdyż są one obsługiwane przez jądro, czyli kernel Android. A właściwie kernel Android co to jest? Jak już wspomniałem, jest to jądro systemu, oparte na jądrze Linuxa, poprzez który procesy uzyskują dostęp do sprzętu, np. do aparatu, głośnika, przycisków zewnętrznych itp. No więc po uruchomieniu procesu, jądro kompiluje kod aplikacji wykorzystując maszynę wirtualną – pozwala ona na wykonywanie poleceń w języku Java, który jest używany na Androidzie.

 

Dopiero potem użytkownik widzi faktyczne działanie aplikacji – wciąż jednak bez przerwy jest ona zależna od działania jądra, które przekazuje jej informacje o każdym kliknięciu i jakiejkolwiek innej reakcji użytkownika. Powrót do ekranu głównego powoduje pozorne zamknięcie aplikacji. Pozorne, bo jej proces wciąż działa (chyba że ograniczymy ilość aktywnych procesów w tle w opcjach programistycznych). Dzięki temu możemy w każdej chwili powrócić do niej bez utraty danych. Po zamknięciu procesu wszelki postęp i instrukcje są wymazywane z pamięci RAM, a kernel wykonuje kod programu odpowiedzialny za jej wyłączenie, który np. zapisuje naszą pracę jako plik, który z kolei zostanie załadowany przy następnym uruchomieniu aplikacji.