Produktový katalog jako nativní aplikace pro iOS a Android a spolupráce s Domino serverem

David Marko  21 December 2012 11:32:27
Pro jednoho z našich zákazníků vytváříme na Domino serveru aplikaci poskytující služby webového produktového katalogu s možností objednávání. Aplikace je postavena na technologii xPages a využivá aktuálních standardů HTML5 a CSS3. Dalším úkolem bylo pro tuto aplikaci vytvořit její mobilní nativní verzi pro zařízení s operačními systémy Android a iOS. Mobilní verze svým zobrazením a ovládáním musí podporovat jak mobilní telefony, tak i tablety.

Pro vývoj jsme zvažovali a testovali několik nástrojů. Pro zjednodušení vývoje jsme se přiklonili k variantě, kdy použijeme nástroj pro vývoj tzv. hybridních aplikací umožňující jednotný vývoj pro obě požadované platformy. Jako nástroj jsme zvolili Trigger.IO .  Hybridní aplikace pro mobilní zařízení pro zobrazování využívají interní webový prohlížeč. Samotný vývoj aplikace je defacto tvorba aplikace prostřednictvím HTML a JavaScriptu. Aplikace běží na zařízení lokálně a s okolím komunikuje prostřednictvím HTTP. Jádro aplikace je tak pro všechny cílové operační systémy (a platformy) identické, což celý vývoj a následnou údržbu aplikace zjednodušuje. Vizuální stránka aplikace je podporována použitým systémem Twitter Bootstrap, kde využiváme možností tzv. 'resposive design', který napomáhá správnému zobrazování na zařízeních různé velikosti a rozlišení. Pro JavaScriptovou část jsme zvolili knihovnu JQuery a vynikající podpůrný framework AngularJS od Googlu .

Testování aplikace se děje přímo na reálných zařízeních, v našem případě na HTC Desire, Samsung Galaxy Tab 10.1 a pro platformu iOS na iPhone a iPADu . Testování na iOS zařízeních vyžaduje několik kroků navíc. iOS zařízení standardně nedovolují instalaci aplikací mimo AppStore. Pro účely vývoje si tedy na Applu vytváříme vývojářský účet a generujeme vývojářský certifikát a taktéž tzv. provisioning profile, ve kterém je definováno, na kterých zařízeních je možno aplikaci instalovat. Samostatná instalace se pak děje přes iTunes, které zajistí přenesení instalačního balíku (soubor s koncovkou 'ipa') do iPADu/iPhonu.

Image:Produktový katalog jako nativní aplikace pro iOS a Android a spolupráce s Domino serverem Image:Produktový katalog jako nativní aplikace pro iOS a Android a spolupráce s Domino serverem   Image:Produktový katalog jako nativní aplikace pro iOS a Android a spolupráce s Domino serverem

Mobilní aplikace samotná si udržuje veškerá data off-line. Data jsou dotahována z Lotus Notes databáze prostřednictvím webových služeb Domino serveru. Pro bezproblémovou realizaci tak není nutno k Domino serveru nic doinstalovávat ani dokupovat. Pouze jsme vytvořili patřičnou protistranu (opět prostřednictvím xPages), která nám data z Lotus Notes databáze vytáhne, zpracuje do JSON formátu a poskytne mobilní aplikaci.

Celý vývojový cyklus je pro mobilní aplikace poněkud delší. Zvláště markantní je to z pohledu vývojářů na Dominu, kde se při změnách aplikací neprovádí nějaká zdlouhavější procedura tzv. deploymentu. Vše je tzv. 'instant', tedy více méně okamžité. Použitím Trigger.IO nicméně došlo k velkému zjednodušení vývoje, který nám v současnosti umožňuje tvorbu nativních aplikací pro mobilní zařízení nasaditelné v kombinaci s platformou IBM Domino.
Comments
no comments availabe. Be the first!
TOPlist