X

We detected that you log in from the UK, do you want to visit our UK website ?  Click here Browse region

Select a brand

Vývoj aplikací pro POS terminály: od „A“ do…„T“

V posledních letech se původně skromné platební terminály vyvinuly z tradičního, proprietárního integrovaného operačního systému do otevřeného POS systému běžícího na systému Android. Tento nový vzorec si klade za cíl urychlit digitální transformaci zákazníků a přetvořit tradiční „point-of-sale“ prodejní zařízení na „point-of-interaction“ systém s mnoha možnostmi interakce.

Systém Android je gigant a není třeba jej představovat. Tento otevřený operační systém založený na Linuxu byl vyvinut a představen v roce 2008 a dočkal se celosvětového úspěchu: v roce 2019 společnost Google oznámila, že se aktivně používá asi 2,5 miliardy zařízení se systémem Android. Dnes je Android považován fakticky za standard v odvětví mobilních telefonů a postupně se prosazuje i v jiných sektorech spotřební elektroniky, například v automobilech, v zábavě a nositelné elektronice. Systém Android dnes hraje zásadní úlohu na celém trhu elektronických zařízení – poskytuje své služby koncovým uživatelům a zjednodušuje využívání funkcí díky jednoduchému uživatelskému rozhraní (UI) a bohatým možnostem komunikace.

Android a Tetra: dva tržní lídři sloužící dvěma různým účelům

Společnost Ingenico, člen skupiny Worldline, si je vědoma významu tohoto vývoje a nedávno uvedla AXIUM – platební terminály nové generace běžící na systému Android, které doplňují její tradičnější hlavní nabídku proprietárního operačního systému Tetra. Obě architektury splňují nejpřísnější standardy odvětví plateb (EMV a PCI-PTS) – v čem se tedy vlastně liší?

Hlavní rozdíl mezi systémy Tetra a AXIUM odpovídá účelu, k němuž jsou tyto systémy určeny. Tetra vychází z operačního systému zaměřeného hlavně na platby. AXIUM byl zase vytvořen pro urychlení vývoje aplikací a jejich přenosnost a umožňuje přístup různých hráčů na tento trh.

Proprietární operační systém Tetra je přizpůsoben potřebám odvětví plateb. Využívá vlastního přizpůsobeného softwaru a podporuje všechny platební metody – umocňuje tak zákaznický zážitek díky multimédiím a službám s přidanou hodnotou na bázi HTML5 (VAS). Vývoj v případě proprietárního operačního systému Tetra vyžaduje pokročilé vývojářské dovednosti v prostředí jazyka C nebo C++ a důkladné znalosti vyhrazených periferních a grafických knihoven. Vývojářům to sice dává neskutečnou svobodu, ale pro třetí strany, které chtějí vyvíjet vlastní aplikace k použití na vlastních terminálech nebo jako služby s přidanou hodnotou pro majitele jiných platforem, to je velká překážka.

Zařízení AXIUM mají operační systém založený čistě na systému Android. Jeho inovace tkví ve sloučení otevřeného operačního systému s nejpřísnějšími úrovněmi zabezpečení EMV a PCI-PTS. Pro využití možností zpracování karetních plateb jsou nezbytné určité sice specifické znalosti (čtečky, EMV), ale vývojové prostředí terminálů AXIUM bude současným vývojářům systému Android z větší části dobře známé, takže budou moci své dovednosti téměř okamžitě přenést a vytvořit z terminálu platformu pro obchodní aplikace.

Základem úspěchu systému Android jsou programovací jazyk Java, aplikační rozhraní (API) a otevřený kód. Nativně jsou k dispozici funkce, které jinak nejsou na tradičních integrovaných systémech snadno dosažitelné, například databáze, mnoho komunikačních rámců, JSON/XML, správa kamery a QR kódů, vylepšená grafika, A2A apod. Tím se posilují možnosti integrace, zkracuje se doba vývoje a snižují se náklady, a navíc je možné aplikace rozšiřovat o další užitečné funkce.

Bez ohledu na použitou technologii mají aplikace na systémech Tetra a Android jednu společnou zásadní vlastnost: jelikož je architektura obou systémů zabezpečená, musejí být aplikace podepsány nástrojem Ingenico, aby je bylo možné do platebních terminálů nahrávat.

Rovněž je důležité mít na paměti, že byly odstraněny všechny funkce systému Android, které narušovaly požadavky na zabezpečení PCI-PTS. Na systému AXIUM nejsou například dostupné služby Google Play. Stejně tak nelze aplikace Android podepsané toolchainem Ingenico nahrávat do Google Play a naopak. Místo toho zajišťuje službu distribuce softwaru aplikace Estate Manager společnosti Ingenico, která umožňuje vývojářům na dálku řídit a spravovat aplikace na všech produktech Ingenico.

Vývoj na Androidu je nyní běžnou dovedností...

Když se podíváte na statistické údaje Google týkající se systému Android, rozhodně vás zaujme mimořádné množství aplikací, které již byly vydány přes Obchod Play (Play Store). Nedávno to bylo celkem 3,04 miliónu aplikací, což několikanásobně překročilo 1 milión aplikací z července 2013.

To je jasný důkaz toho, že na Androidu pracuje ohromná komunita vývojářů. A nejen to: navíc jsou celosvětově dostupné různé prostředky a na webových stránkách Google pro vývojáře je k dispozici dokumentace v mnoha jazycích, která představuje bohatý zdroj příkladů kódování.

Komunita vývojářů Android je velmi aktivní, má svá vlastní fóra, blogy, video tutoriály a bezplatná školení, a to je jen několik dostupných mechanismů podpory pro snazší proces vývoje. Vývojáři si mohou vybrat z široké nabídky programovacích jazyků, od NDK s C/C++ až po abstraktnější běhová prostředí, jako je Java a Kotlin, ale také C#, Python a Ruby apod.

díky prostředkům, které jsou vývojářům dostupné

Vývojáři mají k dispozici řadu prostředků, zde je uvedeno několik nejdůležitějších:

  • Android Studio, otevřené integrované vývojové prostředí (IDE) pro rychlý vývoj aplikací (RAD) založené na IntelliJ IDEA. Nabízí správu komponent (Gradle/Maven), emulátory Android ROM, Android Debug Bridge (ADB) pro spouštění aplikací a další užitečné funkce, jako je Material Design. Jde o výborný nástroj, který se neustále vyvíjí a nabízí jedinečnou podporu této komunity.
  • Aplikace Hello world! lze vytvářet jen několika kliknutími v integrovaném vývojovém prostředí, k dispozici je i podpora ladění. Začít s vývojem nebylo nikdy tak snadné!
  • Pokud jde o ukázky a tutoriály se vzorovými kódy, nabízí GitHub nespočet otevřených zdrojů, ve kterých mnohou vývojáři hledat inspiraci.

Díky tomu je vývoj na systému Android považován za přímočarý

Android nabízí jistotu technologie připravené na budoucnost. Je logické, že nové technologie, například 5G, jsou podporovány i novějšími verzemi systému Android. Když se podíváte na počet prodejců, kteří se zabývají integrací s operačním systémem, je v případě návrhu aplikací systém Android sázka na jistotu.

Android se nadále vyvíjí a je to to nejlepší v oblasti uživatelského zážitku; tvorba uživatelského rozhraní, přístupnost dotykových obrazovek, provozní režim prvků pro ovládání grafiky, widgety, virtuální klávesnice, styly, multimédia atd. Každá inovace se zdokonaluje a oceňují ji milióny koncových uživatelů.

Jednoduchou aplikaci mohou zkušení vývojáři na Androidu nasadit během několika dnů. Již jsme zdůraznili několik prostředků pro vývojáře, avšak základem pro nalezení jednodušších, přímočarých způsobů práce jsou komplexní kompetence.

To vše je součástí inovačního procesu – komplexní vývojářské dovednosti, ale také řešení a portfolia grafických prostředků, která jsou schopna podporovat vývoj na systému Android i dosažené výsledky, a pomáhají tak zkracovat dobu uvedení na trh a zvyšují kvalitu dostupného softwaru.

a nabízí nesporné výhody

  • Klíčovou výhodou platformy Android je opakovaná použitelnost kódu, zejména díky podpoře jazyka Java, kterou nabízí jen tento operační systém. Vývojový proces u platebního terminálu těží z otevřených knihoven, přidává nové vývojové koncepce, jako je vkládání závislostí, reaktivní programování a perzistence dat, a zvyšuje komplexnost řešení, aby byly naplněny různé potřeby.
  • Aplikace v systému Android lze navrhovat pro snadné testování a pro správu automatizovaných testů je k dispozici mnoho různých nástrojů. Ty lze využít ke zlepšování aplikace a zvyšování její hodnoty pro uživatele.
  • Návrh služeb API může urychlit integraci s externími službami nebo správu komunikace mezi aplikacemi. Android rovněž nabízí příležitosti pro použití aplikačních funkcí prostřednictvím služeb třetích stran, čímž otevírá možnosti pro další zdroje příjmů – přeprodáváním aplikačních služeb dalším osobám.
  • Další významnou výhodou je vývojové prostředí systému Android, které poskytuje standardní grafické formáty zahrnující integrované funkce pro navrhování uživatelských rozhraní. Protokolování a online/offline ladění pomáhají s procesy kódování a odstraňování problémů. Další podporu zajišťuje knihovna pro multithreading, synchronizaci, výjimky a databázové rámce.

Existuje ale mezi systémy Tetra a Android nějaké propojení?

Prvním důvodem, proč používat terminál se systémem Android, je nabídka bohatého portfolia obchodních aplikací. Tyto aplikace mohou být samozřejmě vyvíjeny od nuly, ale stejně tak je možné využít již předpřipravené prostředí. Po určitých vylepšeních je možné do POS terminálu instalovat otevřené aplikace Android, které splňují ty nejpřísnější úrovně zabezpečení.

Druhou možností je podívat se na všechny již vytvořené aplikace pro systém Tetra. Bylo by možné je přenést na Android?

Pro vývojáře, kteří již mají zkušenosti s terminály Tetra společnosti Ingenico, je jednou ze základních otázek to, zda by byl jejich vývoj na Androidu jednodušší. Na tuto otázku ale neexistuje snadná odpověď, protože v obou vývojových procesech hraje roli velké množství proměnných: dovednosti, aplikační architektura, komplexnost, očekávání a odborné znalosti.

Slušné znalosti systému Android a portfolio stávajících aplikací by představovaly významnou výhodu a urychlily by proces vývoje. V kombinaci s přístupem k bezplatným příkladům řešení, které ilustrují nejčastější problémy při vývoji aplikací, pak systém Android začíná ukazovat svoji skutečnou hodnotu.

Jednou z možností, kterou je třeba se při přenášení aplikace ze systému Tetra na Android zabývat, je možnost převodu zdrojového kódu Tetra C/C++ na nativní projektové knihovny Androidu. Tento přístup by mohl být výhodný pro přenos velkých obchodních logických aplikací, i když má z hlediska architektury několik slabých míst.

Obecněji platí, že přepis celé aplikace pomocí novějšího a abstraktnějšího kódovacího jazyka, jako je Java/Kotlin, přináší zajímavé skryté výhody. Akcelerátory kódování, například automatický garbage collector, stručná syntaxe, operátor Elvis (ochrana před nulovou hodnotou) a výraz lambda, řeší aspekty vývoje, které by byly v prostředí C++ časově velmi náročné. Čas věnovaný studiu těchto nových technik může celý vývoj urychlit a omezit pracovní zátěž. Některé atributy, například životní cyklus aplikace (správa na pozadí), úkoly, správa dat, správa komunikace a prostředků, ale využívají na systému Android naprosto odlišné modely: to je nutné pochopit a akceptovat.

Společnost Ingenico se zavázala k nepřetržité podpoře terminálů Tetra běžících na proprietárním operačním systému, které budou i nadále upřednostňovány v prostředích, kde obchodní aplikace nejsou nezbytné. V takovém případě funguje terminál jako nástroj pro platby. U některých obchodníků a v některých prostředích ale nabídka aplikací pro obchod a produktivitu, které lze na terminál doinstalovat, přinese významné výhody jak samotným firmám, tak i z pohledu uživatelského zážitku.

Zařízení AXIUM se systémem Android přinášejí osvědčený uživatelský zážitek a otevřenou platformu. Zástupy zkušených vývojářů Android a nespočet aplikací pro tento systém, jež lze snadno přenášet, tak zajistí zářnou budoucnost takového původně „skromného“ zařízení, jako je platební terminál – který nyní může fungovat jako zabezpečená a důvěryhodná platforma pro platby…a to není zdaleka vše.

Pokud chcete rozšířit komunitu vývojářů společnosti Ingenico a dozvědět se o tvorbě digitálních aplikací a služeb pro naše chytré terminály, navštivte naše webové stránky Partnerský program pro vývojáře

Mario Perciabosco, vedoucí týmu pro vývoj systému Android a služeb divize terminálů, řešení a služeb v regionu EMEA společnosti Ingenico, dceřiné společnosti skupiny Worldline

Mario má 18 let zkušeností v odvětví plateb a působil v mnoha funkcích v oblasti softwaru, vývoje a předprodejních služeb. Aktuálně působí jako vedoucí týmu Android pro profesionální služby v regionu EMEA a odpovídá za nové společné projekty a posilování partnerství se zákazníky. Dále své zkušenosti využívá ke zjednodušení přístupu k nejnovějším platebním technologiím.

Stáhnout

Stáhnout jako PDF Všeobecné Obchodní podmínky Ingenico CZ S s.r.o.