Poslední Symbian: proč starší aplikace nefungují?

Starší symbianové aplikace na nových smartphonech nespustíte. Symbian poslední generace dal vale i stávajícím grafickým tématům a nechce mít s předešlou verzí nic společného. Nečekejte ani emulátor. Bude se poctivě platit za nové aplikace.
Co všechno musí vývojář udělat, aby svůj program pro Symbian starších verzí převedl do podoby, která bude fungovat s Nokiemi N80, N91, 3250, nebo se Sony Ericssonem P990? Znamená to jen jednoduché překompilování, nebo jsou nutné i další úpravy? Přesně to nás zajímá, protože na nekompatibilitu starších aplikací s nejnovější verzí Symbianu si stěžujeme v každé recenzi nových smartphonů.

Všechno je jinak

Problém nefunkčnosti aplikací z původního Symbianu v nové verzi 3rd Edition začíná už v samém základu systému, protože kompatibilita není stoprocentní ani na úrovni zdrojových kódů. To znamená, že pouhé překompilování nepomůže. Mezi ty nejdůležitější změny v systému patří:

  • změna některých API, resp. jejich odstranění
  • nahrazení některých datových typů nativními
  • mnohem silnější podpora standardu C++

Změnila se i struktura adresářů, přičemž spuštěný kód může být pouze v jednom konkrétním adresáři nového systému. Byl zaveden tzv. data-caging; to znamená, že vybraná aplikace může mít svůj vlastní vymezený prostor v paměti, do kterého nemůže vstupovat jiný aspekt.

K tomu přibyla tzv. platform security, což je ucelený systém ochrany integrity nového Symbianu. Jeho součástí je již zmiňovaný data-caging a k němu přistupuje capability model. Capability model představuje systém, ve kterém každá akce může vyžadovat od volajícího procesu jistou úroveň oprávnění. Akcí v tomto případě rozumíme aktivaci vybrané funkce, nebo třeba přístup k určitému zdroji, např. k adresáři nebo k síti.

Úrovně oprávnění se dělí na dvě skupiny, systémové a uživatelské. Systémové jsou přidělovány certifikační autoritou, kterou je například samotný Symbian, v budoucnu však počítáme s oprávněními ukládanými velkými prodejci a vývojáři aplikací (Handango.com a další). Přidělení certifikátu se děje až po odzkoušení aplikace a získání podpisu „Symbian sign“. Toto odzkoušení samozřejmě není zdarma, výjimku tvoří snad jen freewarové aplikace. Certifikace se vztahuje na celý SIS soubor, takže jakákoli změna v aplikace nebo jen v její instalaci znamená celý nový proces zkoušení a tedy i novou certifikaci s příslušným poplatkem.

Aby to nebylo tak jednoduché, některé certifikáty mohou poskytnout pouze výrobci mobilů. Systémová oprávnění se s běžným uživatelem nesetkávají přímo, protože jde často o čtení dat specifických pro samotná zařízení, třeba IMEI telefonu apod.

Emulátor nebude

Druhým typem oprávnění jsou uživatelské certifikace. Ty už jsou známé i běžnému uživateli, to když třeba při instalaci uděluje povolení pro přístup k síti nebo ke čtení uživatelských dat jako telefonního seznamu atd.

Aby v Symbianu fungovala, musí být každá aplikace „podepsaná“. Ale pokud nepotřebuje žádné certifikáty, nebo se spokojí pouze s uživatelskými, pak postačí pouze tzv. self-signed certifikát. A ten si může vývojář vytvořit sám.

Model certifikací je z vývojářského hlediska ještě složitější, nám však toto nastínění pro pochopení stačí; každá instalovaná aplikace tedy musí být „podepsaná“ a potřebuje certifikát. Jiné než nově instalované aplikace není možné v Symbianu nové generace spouštět.

Výjimkou je výměna paměťové karty, i když i tam musí být samozřejmě aplikace originálně instalovaná. Není ani možné měnit paměťové karty a spouštět z nich různé verze stejné aplikace. To znamená, že je znemožněno kopírování aplikace i jejích jednotlivých součástí – dovolená je pouze instalace. Z toho plyne i nemožnost vytvoření jakéhokoli emulátoru, který by byl schopen spouštět starší aplikace v prostředí nového Symbianu.

Budoucnost je jasná, budoucnost je „bezpečí“

Podle slov některých vývojářů aplikací pro Symbian zabere jen pouhý výčet a rozebrání změn v novém systému několik dlouhých hodin. A to by se mluvilo jen o zabezpečení. S novou verzí se jednoduše vsadilo na zatím perfektně pracující ochranu před pirátským kopírováním a tedy podporu prodeje originálních verzí programů. Zároveň se ale vsadilo na to, že uživatelům přecházejícím z původní verze na nejnovější neprasknou nervy. Jak to vidíte vy? Vadí vám zcela nová platforma?

Diskuze (30) Další článek: Ufo: Aftershock - dobyjte Zemi zpět (recenze javové hry)

Témata článku: , , , , Druhý typ, Instalovaná aplikace, Vybraná aplikace, Aplikace, Pro +