V iOS 4 bol predstavený multitasking a odvtedy mnoho užívateľov rieši, ako multitasking vypnúť, aby neplytvali prostriedky a batéria vydržala čo najdlhšie. Aplikácie ale nemusíte vypínať av tomto článku vám vysvetlím prečo.
Multasking v iOS 4 nie je ten istý multitasking, ako poznáte z desktopu či z Windows Mobile. Niekto môže hovoriť o obmedzenom multitaskingu, niekto o šikovnom spôsobe multitaskingu. Poďme na to pekne poporiadku.
Nová vlastnosť iOS 4 je možnosť takzvaného rýchleho prepínania aplikácii (Fast Switching). Pokiaľ kliknete na home tlačidlo, tak sa stav aplikácie uloží a pri vrátení sa späť do aplikácie sa objavíte presne tam, kde ste skončili pred vypnutím. Aplikácia ale nie je spustená na pozadí, len jej stav pred vypnutím zamrazil.
Multitasking lišta, zapínajúca sa dvojklikom na home tlačidlo, je skôr lišta naposledy spustených aplikácií. Žiadna z týchto aplikácií na pozadí nebeží (až na výnimky), nie je potrebné ich vypínať. Keby v iPhone dochádzala pamäť RAM, tak si ich iOS 4 vypne sám. Práve pri prepínaní sa medzi aplikáciami využijete vlastnosť Fast Switching, pretože vďaka nej sa prepnete do inej aplikácie relatívne okamžite.
V aktualizáciách App Store často objavíte tzv. iOS 4 kompatibilitu. To práve často znamená zabudovanie funkcie Fast Switching do aplikácie. Na ukážku som vám pripravil video, kde je vidieť rozdiel medzi aplikáciou s Fast Switching a bez nej. Všimnite si rýchlosť prepnutia sa späť.
Už sme si teda vysvetlili, že spodná lišta vyvolaná dvojklikom home tlačidla vlastne nie je multitasking. To ale neznamená, že by v novom iOS 4 multitasking vôbec nebol. V iOS 4 existuje niekoľko multitasking služieb.
- Hudba na pozadí – niektoré aplikácie, napríklad streamované rádiá, môžu bežať na pozadí. Na pozadí nebeží celková aplikácia, ale iba služba – v tomto prípade prehrávanie streamovaného audia.
- Voice-over-IP – typickým zástupcom tu bude Skype. Táto služba umožňuje prijímať hovory, hoci aplikácia nie je zapnutá. Signalizácia zapnutej aplikácie prebieha tak, že sa objaví nová horná lišta s názvom danej aplikácie. Nepleťte si túto službu s Instant Messagingom, správy vám budú môcť chodiť aj naďalej iba cez push notifikácie.
- Lokalizácia na pozadí – na pozadí môže bežať aj služba využívajúca GPS. Môžete sa tak z navigácie prepnúť do mailu a navigácia vás môže aj naďalej navigovať aspoň hlasom. GPS tak novo môže bežať na pozadí.
- Dokončovanie úloh – ak napríklad sťahujete najnovšie správy z RSS, tak aj po vypnutí aplikácie sa môže táto úloha dokončiť. Po skočení (stiahnutí) ale aplikácia už nebeží a nemôže nič ďalšie robiť. Táto služba iba dokončí rozdelenú „úlohu“.
- Push notifikácie – tie už všetci poznáme, aplikácie nám môžu posielať cez Internet notifikácie o nejakej udalosti. Pravdepodobne to tu už nemusím rozoberať.
- Lokálna notifikácia – to je novinka iOS 4. Teraz si môžete v niektorej aplikácii nastaviť, že chcete byť v nejaký čas upozornení na nejakú udalosť. Aplikácia nemusí byť zapnutá a ani nemusíte byť na Internete a iPhone vás upozorní.
Rozmýšľate, čo napríklad teda iOS 4 nevie? Ako je multitasking obmedzený? Napríklad taký Instant Messaging program (ICQ) nemôže bežať na pozadí - musel by komunikovať a to mu Apple nedovolí. Pre tieto prípady ale existuje riešenie napríklad v tom, že použijete aplikáciu (napr. Meebo), ktorá zostáva pripojená aj po vypnutí na serveri daného vývojára av prípade, že vám dôjde správa, tak ste upozornení push notifikáciou.
Tento článok vznikol ako prehľad toho, čo to vlastne multitasking v iOS 4 znamená. Vznikol z toho dôvodu, že som okolo seba videl zmätených používateľov, ktorí neustále otvárali multitasking lištu a aplikácie ihneď po použití zatvárali. Toto je ale nezmysel a nie je potrebné nič také robiť.
Steve Jobs povedal, že nechce, aby používatelia museli pozerať správcu úloh a neustále riešiť voľné prostriedky. Todle riešenie jednoducho funguje, toto je Apple.
Vďaka za pekný článok.
Len by som doplnil, že ukončenie aplikácie môže mať jeden praktický aspekt – aplikácia sa tým vlastne zresetuje. Konkrétne prvá verzia IM+ pre iOS4 mala nejaký bug a na stránke podpory ako dočasné riešenie (ako vydajú novú verziu) práve odporúčali divne sa správajúcu aplikáciu ukončiť a spustiť znova.
Určite je vhodné používať vypínanie napríklad na resetovanie aplikácie, to úplne súhlasím!
Ďakujem za článok,
len by som chcel podotknúť, že preto, aby aplikácie zostali načítané v RAM a fungoval tak fast app switching, je potreba energie baterky, a to o niečo viac, než potrebuje v standby móde, kedy aplikácia je ukončená (neberme teraz do úvahy memory leaks) .
Takže áno tento spôsob je šetrnejší k baterke, ale samotný fakt, že je RAM zaplnená aplikáciami spôsobí určitú o niečo väčšiu záťaž batérie.
Bolo by teda vhodne, aby Apple pridal možnosť, niektoré aplikácie nenechať bežať v RAM, user by si navolil len tie aplikácie, ktoré chce nechať v RAM, ostatné by sa vypínali, jedná sa o aplikácie, ktoré napr. user zapína raz za čas.
Celá RAM sa predsa napája ako celok. Či znáška bajtov v nej je zmrazená aplikácia alebo voľný priestor, je predsa irelevantná. A čo potom fragmentácia pamäte atp ... Ako by asi pamäťový čip spoznal, pri ktorej časti má vypnúť a napájanie a pri ktorej nie? Je to jednoducho blbosť. Spotreba pamäťových čipov, pokiaľ sa nemení ich obsah, je dnes navyše minimálna.
prepáč, ale moje užívateľské skúsenosti hovoria inak, baterka je, hoci nepatrne, ale je zaťažená... a ako tu niekto nižšie píše, znižuje sa aj odzvaná 3GS,ka na tom asi bude lepšie...o tom žiadna
Naozaj nemá byť ako zaťažená, je to presne tak, ako píše Adam. Pamäte by mali byť napájané stále rovnako a na procesor tieto uspané aplikácie nemajú vplyv.
Ako spis som mal a občas mám problémy s menšou vydržou iphonu 3gs pri používaní aplikácii, ktoré nie sú prispôsobené pre ios 4 ale to sa stále zlepšuje a zlepšuje, každý deň pomaly sťahujem par update … od tej doby čo prišla prvá vlna up všetko stabilizovalo ;) a je fakt zo sem tiež raz musel urobiť restore bez toho, aby som chcel :)
ja osobne som vyššiu spotrebu batérie nespozoroval
Chcel by som podotknúť, že čím viac nevypnutých aplikácií, tým menej pamäte a tým pomalšie IPhone ... v mojom prípade sa 3GS dostane pokojne na 3 MB a je ako korytnačka ....
Keď dochádza pamäť, tak iPhone vypína najskôr spustené aplikácie, neustále tak má dostatok pamäte RAM. Na svojom iPhone 3GS žiadne spomalenie nepozorujem (a to som naozaj heavy user).
môj 3GS sa spomalí ukrutne… trva mu potom večnosť než otvorí sms, kalendár atď… uzavretie pár aplikácii pomôže razantne… (väčšinou Safari a omnifocus postačí…)
Bohužiaľ musím potvrdiť, je to tak.
Tie môžem potvrdiť – je to tak. 3GS s viacerými spustenými aplikáciami sa jednoducho spomaľuje. Čo sam nechapem, ale naozaj to na telefóne pozorujem.
4G má dvojnásobok pamäte, takže tam to bude určite o dosť lepšie…
ani ja žiadne spomalenie nepozorujem, spis sa mi zada že je nový OS ešte rýchlejšie ako pred tým, ale to je asi len môj subjekt. dojem
Mám v iPhone 15gb aplikáciu, používam ich a nepozorujem. Je fakt že som mal podobný problém a dokonca som sa chcel vrátiť na 4.0 GM, pretože tá mi fungovala lip ... bohužiaľ nemám JB a nemám ani uložené SHSH bloby, takže nemoznosť. Urobil som restore a všetko začalo fungovať svižne a krásne ;)
Už som videl niekde zmienku o lokálnych notifikáciách, ale nikde som nenašiel k tomu akúkoľvek voľbu. Napr. aktualizovaný Pocket Informant by ich mal mať, ale … neviem. Nie celkovo sa mi notifikácia na mojom iPhone nezdá. Nie som spokojný, prídu mi nedostatočne.
A ide natvrdo vypnúť uspaná aplikácia? Prípadne ako ukončiť aplikáciu, keď stlačenie Home ju automaticky odsunie na pozadí?
Ide – na jednej ikonke sa podrží prst, potom sa všetky začnú trepať a objavia sa na nich mínuska
Podľa môjho pozorovania iOS4 na 3Gs telefón pri veľkej záťaži urobí z pekného svižného moderného telefónu celkom nepríjemný smartfón typu WM (či PalmOS môjho starého Treo680) - jednoducho laguje, laguje, laguje. Jediné čo pomáha je pravidelne čistiť spustené aplikácie a to ma naozaj nebaví a jailbreakovať nechcem - vážne premýšľam o návrate k iOS3, ale neviem čo by tomu hovorili apps optimalizované v súčasnosti pre iOS4. Neviem, asi som ešte väčší heavy user ako autor článku, ale pomaaaallliiičku sa spúšťajúce applikácie sú neprehliadnuteľné - ale bežne bežím -kalendár, telefón, sms, poznámky, things, 8stránok v safari, geocaching, fotak, kontakty, Bibliu, iPod a appstore ( 3MB voľné RAMM). Som fanúšik Apple, ale iOS4 sa IMHO pre staršie HW (vrátane 3Gs) jednoducho nehodí.
bullshit. Mám 3GS as iOS 4 absolútne bez problému. iOS 4 je pre iOhone 4 a 3GS. Ostatné majú jednoducho smulu, čo môže zamrznúť (ako majiteľa 2G to naozaj chápem) ale je to logika. Buď chceme vývoj sowftu a to samozrejme bude aj niečo „stať“, alebo chceme aby bolo stále rovnaké železo a to musíme počítať s tým, že sa SF príliš nezmení.
iPhone to má možno s multitaskingom vyriešené dobre, ale niektoré aplikácie bohužiaľ nie. Napríklad COMIC READER MOBI mi jednoducho sucho oznámi, že nenačíta ďalšiu stránku pretože má málo pamäte. Väčšinou musím povypínať takmer všetky uspané aplikácie, než sa zase rozhýbe:-( A to mám 3GS a vyššie uvedená aplikácia je údajne upravená pre OS4.
skús to urgovať u supportu aplikácie, evidetne je problém tam ;(
Môže mi prosím niekto vysvetliť, kde sa tie lokálne notifikácie nastavujú? Je to v Nastavenia > Oznámenia av ňom to musím určitým aplikáciám povoliť? Inak som žiadne iné nastavenia notifikácií nenašiel (ďalšie sú už len v nastavení vyzdvihovania e-mailu a to je tuším to Push, ktoré odošle oznámenie zo servera) Ďakujem!
Lokalná notifikácia musí aplikáciu podporovať, napríklad zaujímavú aplikáciu s lokálnymi notifikáciami je Notify 2…
No dobre, ale čo treba ten Pocket Informant? Mal by to vedieť, ale nikde som si nevšimol rozdiel medzi lokálnymi notifikáciami a inými. Priznám sa, že som to ani neskúšal. Skúša Palringo v premium verzii, niečo o notifikáciách sa v popise píše (to už samozrejme nie o lokálnych), ale tiež nemám žiadny badge na ikone. Z aplikácie môžem preskočiť inam a potom zase späť, ale po návrate opäť prebieha logovanie, čo som tak nejako nečakal. Pokiaľ v tom Palringu priamo nie som, nikde žiadna notifikácia. Je to v poriadku? Najhoršie je na tom asi aplikácia 2Do, ktorá uvádza funkčnosť notifikácií len pod WiFi. Na úlohovník dosť úbohé, že jo. Za 7 dolárov… trapas. :-(
s backgrounder mám stále lepší pocit, ako s realizáciou „multitaskingu“ od apple. inac ziadne spomalenie 3GS nepozorujem, ani pri zaplnenej ramke. najprv som zo zvyku vypinal aplikácie cez sbsettings, neskôr som od toho upustil a pohoda
Spomalenie na 3GS som si všimol, nie zakaždým, ale občas áno. Každopádne nie všetky aplikácie korektne fungujú, napríklad TV Zoznam od Zoznamu občas nezaregistruje presun do aktívnej služby a nenačíta updaty tv programov, takže pomôže reštart aplikácie, čo je opruz proti pôvodnému stavu.
Nazdar navzájom,
resil ste niekedy niekto reklamáciu aplikácie? s iOS4 mi nefunguje navigon a €89 nie je uplne malo… akým spôsobom prebieha reklamácia?
Problém nie je v aplikácii. Skús reštartovať iPhone, ak to nepomôže, restore celého telefónu. Navigon mi funguje na 3G s iOS4 bez problémov.
Spomalenie na 3GS tiež nepozorujem, ale kde to vadí, je znovunačítanie otvorených okien Safari. Pokiaľ je dostatok RAM, tak obsah už načítaných stránok zostane zachovaný.