TOPlist

Windows Phone Tango: Co přinese nová aktualizace (velký přehled)

Tango aktualizace přichází s podporou slabšího hardware, upravuje multitasking a přináší i několik omezení. Připravili jsme pro vás podrobný přehled o všech změnách.

Od poslední velké aktualizace platformy Windows Phone neuběhlo ani půl roku. Update zvaný Windows Phone 7.5 (označovaný také jako Mango) se do telefonů začal distribuovat na přelomu září a října 2011. Do zařízení přidal mnoho nových funkcí, přinesl také konečně podporu pro české uživatele. V nových telefonech se už objevila česká lokalizace, byl také zpřístupněn Marketplace pro nákup i prodej aplikací.

Upozornění: Berte prosím na vědomí, že informace uvedené v tomto článku se do finální verze systému mohou ještě změnit.

 

V poslední době se začíná objevovat stále více informací o další aktualizaci, označované jako Tango. Co o ní aktuálně víme? Tango by se mělo začít distribuovat do telefonů někdy v průběhu dubna 2012. Tuto aktualizaci by měla dostat všechna současná Windows Phone zařízení, první i druhé generace. Mělo by přinést především tyto nové funkce:

  • vylepšená podpora MMS zpráv (možnost připojení více obrázků najednou, vložení videa, zvukové poznámky nebo vyzváněcího tónu do zprávy), změny se možná budou týkat i posílání zpráv přes Windows Live Messenger apod.
  • nová ikonka ve status baru upozorňující na to, že aplikace přistupuje k aktuální poloze telefonu (že využívá lokalizaci pomocí GPS nebo BTS)
  • Marketplace bude rozšířen do 23 nových zemí (o 60% více potenciálních zákazníků), aplikace půjdou konečně nakupovat i ze Slovenska
  • možná přibyde podpora nových jazyků v systému
  • možná také přibyde lepší možnost práce s kontakty na SIM kartě, možnost exportu kontaktů z telefonu na SIM apod.

O dalších novinkách, jako například o možnosti přenosu souborů přes Bluetooth nebo možnosti připojení bezdrátové klávesnice, zatím nepadla řeč. Na tyto funkce si nejspíš ještě budeme muset chvíli počkat.

Podpora slabšího hardware, nižší cena zařízení

Kdykoliv se zmiňuje aktualizace Tango, mluví se také o tom, že by měla přinést podporu pro pomalejší a levnější zařízení. Systém by měl být odladěnější a rychlejší. Byly sníženy minimální hardwarové požadavky pro výrobce telefonů, především na velikost paměti RAM. Aktuální parametry vypadají takto:

  • minimálně 256 MB RAM (sníženo z 512 MB)
  • pro ukládání dat může být v zařízení méně, než 8 GB paměti ROM
  • procesor může být slabší (minimum 800 MHz)
  • volitelný fotoaparát

Rozlišení displeje naštěstí zůstává stejné, stejně tak podpora pro multidotykové ovládání (s podporou stisku alespoň čtyř dotyků najednou). Aktualizace Tango tedy přináší určité rozdělení telefonů na ty “výkonné” a ty “levné”. Mezi zařízení s touto sníženou pamětí RAM bude patřit především nová Nokia Lumia 610, několik omezení bude mít také ZTE Orbit. Tyto telefony už budou distribuovány přímo s Tangem (na ostatní telefony se aktualizace nejspíš dostane až později).

Levná zařízení s 256 MB RAM budou mít ještě několik specifických omezení. Nyní si je pouze shrneme, podrobněji si je okomentujeme v druhé části tohoto článku:

  • nebudou fungovat určité druhy služeb na pozadí (konkrétně typu PeriodicTask a ResourceIntensiveTask)
  • někteří vývojáři budou muset upravit svoje aplikace, aby nespotřebovávaly tolik paměti
  • bude omezena funkcionalita Fast App Switching
  • nepůjdou přehrávat náročná videa (některé kodeky nebudou podporovány)
  • nepůjdou z telefonu procházet a přehrávat podcasty (toto se možná týká pouze video podcastů, ne hudebních)
  • nebude fungovat vestavěná služba Local Scout
  • nepůjde zvolit automatické nahrávání fotek na SkyDrive

Tato omezení vypadají na první pohled poměrně zásadně. Každého hned napadne, jestli to platformě neuškodí, příp. jestli jí to nezpůsobí nepříjemnou fragmentaci. Pokusím se postupně jednotlivé body okomentovat. Ukážeme si, že většina těchto omezení má poměrně logické odůvodnění. Uvidíme, že to není jen náhodný výstřel do tmy nebo ústupek výrobcům zařízení, ale že to má Microsoft docela pod kontrolou. Uživatelský zážitek z Windows Phone by měl být v prakticky kompletní podobě zachován i na levných zařízeních.

Současná podoba multitaskingu na Windows Phone

Dovolil bych si ještě jedno malé odbočení a připomenul, jak v současné době funguje na Windows Phone multitasking. Na popředí může být vždy pouze jedna aktivní aplikace. Ostatní programy jsou uspané na pozadí, případně úplně vypnuté. Při uspání na pozadí se ještě rozlišuje stav dormant (aplikace je celá v paměti, jen byla zastavena všechna její vlákna) a stav tombstoned (aplikace je odnačtena z paměti, pouze si mohla uložit nějaké informace o svém stavu). Princip uspávání do dormant stavu se nazývá právě Fast App Switching. Podrobněji byl celý životní cyklus aplikace popsán například ve 12. díle zdejšího seriálu o vývoji her.

 

Kromě svého hlavního běhu si může aplikace ještě zaregistrovat několik typů služeb na pozadí. I když je aplikace vypnutá, může přehrávat hudbu, nebo stahovat data z internetu. Také může nastavit, aby uživateli vyskočilo po určité době okno s alarmem nebo s upomínkou.

Pokud chce vypnutá aplikace aktualizovat svá data zvenčí (například měnit informace na své živé dlaždici), může k tomu využívat takzvané Push notifikace. V případě požadavku na změnu přijde pobídka k aktualizaci od vzdáleného serveru. Tento způsob nespotřebovává tolik zdroje telefonu, je k němu ale potřeba stálé připojení k internetu.

 

Kromě toho si může aplikace zaregistrovat ještě dva typy služeb na pozadí. PeriodicTask se volá jednou za 30 až 40 minut, může provádět nějakou činnost po dobu maximálně 15 sekund. Navíc má určitá omezení, například že její činnost může zabrat maximálně 6 MB paměti a také že nefunguje v Battery Save módu. Na současných telefonech může běžet maximálně cca 10 takovýchto služeb, pokud je překročen tento limit, mělo by uživateli vyskočit okénko s možností vypnutí některých služeb.

Obdobnou službou na pozadí je také ResourceIntensiveTask, ta může běžet až po dobu 10 minut, ale telefon musí být připojen k WiFi síti nebo kabelem k počítači, také musí mít plně nabitou baterii, nebo být na nabíječce. Některým uživatelům se tedy tyto služby ani nemusí nikdy zavolat.

Tango na 256 MB RAM

Jak bylo na začátku řečeno, na levných zařízeních s 256 MB RAM nebudou podporovány poslední dvě zmiňované služby – PeriodicTask a ResourceIntensiveTask. Neznamená to, že by kvůli tomu nefungovaly například živé dlaždice, ty budou pořád moci být aktualizovány pomocí push notifikací (nebo přímo ze zapnuté aplikace). Ostatní služby, jako přehrávání hudby na pozadí, budou také fungovat.

 

Pro pochopení, proč se Microsoft vzdal této funkcionality, bude potřeba trochu počítat. Samotný operační systém Windows Phone zabírá v paměti RAM přibližně 100 MB. Hudba přehrávaná na pozadí může zabrat přibližně dalších 15 MB. Běžící aplikace na popředí mohla doteď zabírat až 90 MB. To se v případě Tango aktualizace trochu mění, pro zachování zpětné kompatibility může aplikace zabírat stále 90 MB paměti, ale jen prvních 60 MB se bude nacházet skutečně v rychlé paměti RAM (ostatní bude stránkováno).

Kdybychom si k tomu přičetli dalších 60 MB za 10 spuštěných agentů na pozadí, plus nějakou režii systému, dostali bychom se velice blízko limitu 256 MB. To by mohlo způsobit nestabilitu systému, proto raději Microsoft tyto služby u levných zařízení zakázal (je jasné, že se většinou nebude spouštět všech 10 agentů najednou, přesto je tento argument uváděn jako důvod). Naštěstí ale jejich absence není až takový problém, právě díky podpoře push notifikací.

Další omezení

Snížení limitu z 90 MB na 60 MB se projevilo i na kompatibilitě již naprogramovaných aplikací (pro představu, aplikace na standardním Androidu mohou zabírat jen 16 MB v paměti). Aplikací přesahujících tento limit se v Marketplace prý nacházelo asi 5%. Microsoft už ale vývojářům rozeslal e-mail s upozorněním, aby měli čas je ještě opravit před finálním vydáním systému. Pokud už nějaké programy v Marketplace máte a žádný mail vám nedorazil, tento problém se vás netýká.

Jak bylo vidět z rozdělení paměti, nezbylo už zde žádné místo pro uspávaní aplikací do dormant stavu. Fast App Switching na těchto levných zařízeních bude tedy omezen jen na stav tombstoned. Dlouhé držení tlačítka zpět nejspíš opět vyvolá nabídku posledně spuštěných aplikací (u aktuálních buildů Tanga se tomu tak děje), aplikace se ale budou vždy obnovovat z tombstonovaného stavu.

 

Bude se to tedy chovat podobně, jako u prvních verzí systému Windows Phone. Ještě více bude záviset na tom, jak dobře vývojáři zabudují podporu tombstoningu do svých aplikací. Pokud bude v daném programu implementovaný korektně, navracení k posledně spuštěným aplikacím bude fungovat úplně stejně dobře, jako teď, jen o něco pomaleji. Budeme věřit, že většina vývojářů nebude lenit a že nezapomenou na své uživatele :)

Ostatní zmiňovaná omezení jsou myslím pochopitelná. Pokud budou mít zařízení pomalé procesory, nemá cenu, aby dokázaly přehrávat HD video (stejně by se sekalo). Případné filmy se do podporovaného kodeku stejně převedou automaticky pomocí programu Zune. Odstavení podcastů a služby Local Scout naopak upřímně nechápu, ale možná je to myšleno jen tak, že se tato zařízení stejně budou distribuovat jen do zemí, kde tyto služby stejně nebudou v nejbližší době podporovány. S českým LIVE ID ostatně zatím také nejde používat ani jednu z těchto služeb.

Nokia Lumia 610

Toto omezené Tango jsme měli možnost si odzkoušet na telefonu Nokia Lumia 610. Nebyla tam úplně poslední verze systému, proto nemělo cenu zaznamenávat nějaké konkrétní hodnoty benchmarků. Systém byl ale naprosto plynulý a svižný. Zkoušeli jsme simulovat nějakou situaci, kde by se projevil rozdíl v odlišném pojetí Fast App Switchingu, neobjevili jsme ale jediný problém. Minimálně u vestavěných aplikací vše fungovalo úplně stejně, jako na aktuálních zařízeních. Také jsme zkoušeli pouštět mobilní HTML5 Speed Reading test, hardwarová akcelerace webu bez problémů fungovala a rychlost byla plně srovnatelná s první generací Windows Phone zařízení (dokonce o něco málo vyšší).

Věřím, že tyhle Lumie a podobné levné Tango telefony platformě nijak neuškodí, naopak přispějí k většímu rozšíření Windows Phone. Dokážu si představit, že to budou přesně ty telefony, které budou firmy kupovat svým zaměstnancům (díky dobré podpoře Exchange apod.). Cena by také měla být nastavena příjemně, uvidíme, jak velké nakonec budou prodeje.

- - -

 - - - 

Vývoj pro Tango

Pro vývojáře, kteří se už chtějí připravit na Tango, připravil Microsoft nové Windows Phone SDK verze 7.1.1, přibyla tam možnost testování aplikací v emulátoru s 256 MB RAM. Téma, jak optimalizovat aplikace pro omezenou paměť, by také vydalo na celý článek, na to už zde není místo. Zájemce ale zatím odkážu na dokument na stránkách Nokie, případně příspěvek na blogu Alexe Goleshe.

Autor článku Tomáš Slavíček
Tomáš Slavíček

Kapitoly článku