Poprzednim razem na wybitnie prostym przykładzie opisałem z czego składa się aplikacja Windows Store. Przyszła pora na opisanie cyklu życia aplikacji. Jeśli mieliście do czynienia z tworzeniem aplikacji na Windows Phone, zauważycie że aplikacje tworzone pod kątem Modern UI niewiele różnią się pod tym względem.

Stare chińskie przysłowie mówi: “jeden obraz wart więcej niż tysiąc słów”. W przypadku cyklu życia aplikacji Windows Store, przysłowie to pasuje idealnie.

Powyższy obrazek prezentuje cykl życia aplikacji Windows Store. Aplikacja taka działa w trzech stanach:

  • aplikacja jest uruchomiona
  • aplikacja jest wstrzymana
  • aplikacja jest wyłączona

Pierwszy i ostatni stan są oczywiste i nie wymagają dodatkowego wyjaśnienia. Interesująco prezentuje się stan “pośredni”, czyli wstrzymanie aplikacji. Stan ten ma miejsce, gdy uruchomiona zostanie inna aplikacja (w trybie pełnego okna – o tym napiszę w jednym z kolejnych odcinków serii). Nawet jeśli uruchomimy standardową desktopową aplikację, aplikacja Modern UI przejdzie w stan wstrzymania. Podczas wstrzymywania aplikacji, mamy możliwość zachowania jej aktualnego stanu. Mamy na to 5 sekund. Jeśli w tym czasie aplikacja nie będzie odpowiadać, system operacyjny wyłączy ją. Każda wstrzymana aplikacja przechowywana jest w pamięci, dzięki czemu można ją bardzo szybko “ożywić”. Wstrzymane aplikacje zużywają niewielkie ilości zasobów i nawet na tablecie nie powodują znacznego spadku wydajności systemu. Jeśli okaże się, że system operacyjny potrzebuje dodatkowych zasobów, wówczas zamknie wstrzymane aplikacje, by móc skorzystać z zasobów, które przez te aplikacje były blokowane.

Jeśli wrócimy do aplikacji, która przebywała w trybie wstrzymania, nie musimy martwić się o dane, które zostały do aplikacji wprowadzone. W momencie wznowienia działania aplikacji, zostanie ona przywrócona do stanu sprzed wstrzymania (o ile zadbaliśmy o zachowanie tych danych). Podczas wstrzymania aplikacji, nie będzie ona w stanie otrzymywać żadnych żądań z sieci, więc jeśli wasza aplikacja wymaga aktualnych danych (np. czytnik rss, klient poczty, itp.), podczas procesu wznawiania, będziecie musieli pobrać aktualne dane.

W następnym wpisie poświęconym tworzeniu aplikacji Windows Store, opiszę zdarzenia odpowiedzialne za każdy ze stanów aplikacji.

Poza trzema wymienionymi na powyższym obrazku stanami, jest jeszcze jeden – “aplikacja padła”. W takim przypadku system wraca do ekranu startowego oraz proponuje wysłanie informacji o błędzie do Microsoftu w celu zdiagnozowania przyczyny problemu.

Ostatnią kwestią w temacie cyklu życia aplikacji, jest jej usunięcie. Czynność ta spowoduje usunięcie wszystkich danych, które aplikacja mogła przechowywać, za wyjątkiem plików zapisanych w katalogach użytkownika.

źróło: http://msdn.microsoft.com/en-us/library/windows/apps/hh464925.aspx