Wielozadaniowość w iOS — definicja, historia i obsługiwane urządzenia
Poznaj wielozadaniowość w iOS: definicję, historię od iOS 4 oraz listę obsługiwanych iPhone’ów, iPadów i iPodów — kompletny przewodnik.
Wielozadaniowość to funkcja dostępna w systemie iOS, która umożliwia uruchamianie wielu aplikacji i wykonywanie zadań w tym samym czasie — zarówno w sensie uruchomienia wielu procesów (np. odtwarzanie muzyki w tle), jak i szybkiego przełączania się między aplikacjami bez konieczności ich pełnego ponownego uruchamiania. System zarządza przy tym zasobami i energią urządzenia, aby zapewnić płynność działania i jak najdłuższy czas pracy na baterii.
Galeria obrazów
2 ObrazyHistoria
Multitasking po raz pierwszy pojawił się w czerwcu 2010 roku wraz z oficjalnym wydaniem iOS 4.0 (udostępnionym użytkownikom 21 czerwca 2010). Początkowo obsługa wielozadaniowości była ograniczona do wybranych urządzeń — tylko iPhone 4, iPhone 3GS i iPod Touch 3. generacji mogły korzystać z wielozadaniowości zaraz po premierze. iPad otrzymał wsparcie dla multitaskingu nieco później, wraz z wydaniem iOS 4.2 w listopadzie 2010 roku.
Z czasem Apple rozbudowało możliwości wielozadaniowości — zarówno od strony API dla deweloperów, jak i interfejsu użytkownika na iPadzie (m.in. Slide Over, Split View i Picture in Picture wprowadzane w kolejnych wersjach iOS). Równocześnie systemy iOS ewoluowały tak, aby lepiej zarządzać zużyciem energii i przydzielaniem zasobów w tle.
Jak działa wielozadaniowość w iOS — tryby i ograniczenia
iOS nie daje aplikacjom nieograniczonego działania w tle — zamiast tego udostępnia zestaw specjalnych trybów i usług, które pozwalają aplikacjom wykonywać określone zadania bez aktywnego działania na pierwszym planie. Najważniejsze z nich to:
- Odtwarzanie audio w tle — aplikacje muzyczne i audio mogą kontynuować odtwarzanie po przejściu na drugi plan.
- VoIP — aplikacje głosowe mogą utrzymywać połączenie sieciowe wymagane do obsługi połączeń (np. komunikatory głosowe).
- Usługi lokalizacji — aplikacje korzystające z GPS mogą działać w tle, np. nawigacja lub śledzenie fitness.
- Task completion (zakończenie zadań) — aplikacja może dokończyć rozpoczęte zadanie (np. przesył pliku) po przełączeniu się w tło przez krótki, określony czas.
- Background fetch — system okresowo wznawia aplikację, aby mogła pobrać świeże dane.
- Silent / remote notifications — tzw. ciche powiadomienia push mogą wybudzić aplikację w tle do pobrania lub przetworzenia treści.
- Background transfer (NSURLSession) — długotrwałe transfery sieciowe mogą być kontynuowane przez system po zamknięciu aplikacji.
- Komunikacja z akcesoriami i Bluetooth — aplikacje mogą utrzymywać komunikację z zewnętrznymi akcesoriami sprzętowymi.
- BGTaskScheduler i zadania tła — nowsze API (od iOS 13) umożliwiają planowanie dłuższych zadań tła z uwzględnieniem optymalizacji energetycznej i priorytetów systemu.
System decyduje o tym, kiedy i jak często aplikacje mogą wykonywać pracę w tle — priorytetyzuje zadania, agreguje wybudzenia (batching) i ogranicza aktywność, gdy bateria jest niska lub urządzenie jest obciążone.
Multitasking na iPadzie i w interfejsie użytkownika
Na iPadzie Apple rozszerzył koncepcję wielozadaniowości o możliwości jednoczesnej pracy z wieloma aplikacjami na ekranie:
- Slide Over — szybkie otwarcie drugiej aplikacji w wysuwanym panelu.
- Split View — równoczesne wyświetlanie i korzystanie z dwóch aplikacji obok siebie (dostępne na nowszych modelach iPada).
- Picture in Picture (PiP) — odtwarzanie wideo w małym, przenośnym oknie podczas korzystania z innych aplikacji.
Obsługiwane urządzenia
Początkowo wielozadaniowość była obsługiwana przez iPhone 4, iPhone 3GS i iPod Touch 3. generacji; iPad zyskał wsparcie wraz z iOS 4.2 w listopadzie 2010 roku. W praktyce dostępność konkretnych funkcji multitaskingu zależy od wersji iOS oraz możliwości sprzętowych urządzenia — nowsze funkcje (np. Split View czy BGTaskScheduler) wymagają nowszych wersji systemu i bardziej wydajnego sprzętu.
Jeśli chcesz sprawdzić, czy Twoje urządzenie obsługuje określoną funkcję wielozadaniowości, sprawdź wymagania danej wersji iOS lub dokumentację Apple dla deweloperów dotyczącą UIBackgroundModes, Background Tasks i funkcji multitaskingu na iPadzie.
Praktyczne uwagi
- Użytkownik może zarządzać uruchomionymi aplikacjami i zamykać je ręcznie (np. przez przejście do przełącznika aplikacji), ale system iOS zwykle lepiej zarządza pamięcią i energią, dlatego ręczne wymuszanie zamknięcia rzadko poprawia wydajność.
- Aplikacje muszą zadeklarować uprawnienia i tryby działania w Info.plist, aby korzystać z wybranych możliwości tła.
- Wielozadaniowość to kompromis między funkcjonalnością a zużyciem baterii — system i deweloperzy współpracują, by minimalizować negatywny wpływ na czas pracy urządzenia.
Wielozadaniowość w iOS to złożony mechanizm łączący API dla deweloperów, decyzje systemowe i optymalizacje sprzętowe — dzięki temu użytkownicy otrzymują płynne doświadczenie pracy z wieloma aplikacjami, a jednocześnie zachowywana jest efektywność energetyczna urządzeń.
Cechy
Szybkie przełączanie aplikacji
Szybkie przełączanie aplikacji umożliwia szybkie wstrzymywanie i wznawianie pracy aplikacji oraz łatwe przechodzenie do innych aplikacji.Aplikacja, która jest wyświetlana na ekranie, jest "uruchomiona". Aplikacja, która nie jest wyświetlana na ekranie, ale jest nadal w pamięci, jest "zawieszona". Wszystkie aplikacje, które są zbudowane z iOS 4 SDK obsługuje szybkie przełączanie aplikacji, jeśli działa na iOS 4 i kompatybilne urządzenie. Użytkownicy mogą korzystać z szybkiego przełączania aplikacji, otwierając pasek multitaskingu. Pasek wielozadaniowości można wyświetlić, dwukrotnie dotykając przycisku głównego.
Wykonanie zadania
Uzupełnianie zadań umożliwia aplikacjom kontynuowanie określonego zadania po zawieszeniu aplikacji. W systemie iOS 4.0 lub nowszym aplikacje mogą poprosić o maksymalnie dziesięć minut na wykonanie zadania w tle.
Praca w tle
Aplikacje mogą działać w tle przy użyciu interfejsów API działających w tle. Poniższe funkcje są dostępne w systemie iOS 4.0 lub nowszym:
- Dźwięk - odtwarza dźwięk
- Lokalizacja - wykorzystuje usługi lokalizacyjne.
- VOIP - wykonuje połączenia VOIP
Następujące dwa API zostały dodane w iOS 5.0:
- Newsstand - pobieranie zawartości do Newsstand
- Akcesoria zewnętrzne - współdziała z akcesoriami zewnętrznymi
Powiązane strony
- Wielozadaniowość
Powiązane artykuły
Autor
AlegsaOnline.com Wielozadaniowość w iOS — definicja, historia i obsługiwane urządzenia Leandro Alegsa
URL: https://pl.alegsaonline.com/art/67490
Źródła
- huffingtonpost.com : "iOS 4 iPhone Update RELEASED: A Guide To iOS 4"
- pcmag.com : "Apple iPhone iOS 4 Software Update Expected Monday"
- arstechnica.com : "Ars reviews iOS 4: what's new, notable, and what needs work"
- wired.com : "iOS 4.2 multi-tasking comes to the iPad"
- support.apple.com : support.apple.com/en-us/118408
- anandtech.com : "Apple's iOS 4 Explored"
- pcworld.com : "Multitasking on Apple's iPhone 4: How Does It Work?"
- developer.apple.com : developer.apple.com/library/ios/
- macworld.com : "Inside iPhone 4.0's multitasking"
- reviews.cnet.com : "Apple iPhone 4"
- ilounge.com : "Instant Expert: Secrets & Features of iOS 4"
- pcworld.com : "Multitasking With iOS 4 is Horrible: Apple Blew It"
- gizmodo.com : "How Multitasking Works in the New iPhone OS 4.0"
- macworld.com : "How iOS multitasking really works"