Február közepén váltak elérhetővé a legnépszerűbb menetrend alkalmazásaink a Huawei App Gallery-ben, kezdetben korlátozott funkcionalitással: interaktív térképek, valamint push üzenetek nélkül.

Az elmúlt hetekben azon dolgoztunk, hogy egy új, OpenStreetMap alapú interaktív térképet integráljunk alkalmazásainkba, amely már teljes értékűen működik a Google-mentes készülékeken is. Alkalmazásaink legújabb verziója a mai naptól vált elérhetővé a felhasználóink számára, így az elsők között nyújthatunk térképes navigációt a közösségi közlekedéssel utazók számára az említett készülékeken. A fejlesztés nem csak az idén megjelenő Huawei telefonok tulajdonosainak, hanem az egyedi ROM-ok használóinak és az open source közösségek tagjainak is előnyös. Az alábbiakban röviden összefoglaljuk a fejlesztés célját és a legnagyobb kihívásokat.

Motiváció

Aki követi a technológiai világ híreit, bizonyára hallott a „Huawei ban”-ról, amely tavaly május óta megtiltja az USA-beli cégek (mint pl. a Google) és a Huawei együttműködését. Ennek következtében sem a Google népszerű alkalmazásai (Gmail, YouTube, Google Térkép, stb), sem a fejlesztők számára nyújtott szolgáltatásai nem érhetőek el a Huawei újonnan megjelenő készülékein. Ez utóbbiak közé tartozik a Google Play Szolgáltatások, amely többek között a Google alapú térképek működéséhez elengedhetetlen, valamint a Firebase egyes részei, amely különféle fejlesztői eszközök mellett a push üzenetek működését is biztosítja az Androidos készülékeken.

Mivel a Huawei jelentős szereplő a hazai mobil piacon (menetrend alkalmazásaink felhasználóinak kb. 30%-a a gyártó készülékeit használja), így fontos volt számunkra, hogy alkalmazásaink ezeken az eszközökön is elérhetőek maradjanak, a kieső szolgáltatásokat pedig házon belüli megoldásokkal, vagy a Huawei által nyújtott alternatívákkal pótoljuk. Ez utóbbiban jelentős segítséget nyújtott számunkra a Huawei Magyarország csapata: információkkal láttak el minket a fejlesztők számára nyújtott eszközeikről, valamint készséggel válaszoltak az App Gallery használata és az appok feltöltése során felmerülő kérdéseinkre. A segítséget ezúton is köszönjük.

Élet a Google-ön túl

Manapság az Android alkalmazások többségében a Google térképeivel találkozhatunk. Ennek fő oka, hogy ez a hivatalos, Google által támogatott megoldás az Android platformon, amely ráadásul a legtöbb esetben teljesen ingyenesen, bármiféle havidíj vagy rejtett költségek nélkül érhető el a fejlesztők számára. Emellett a felhasználók is egy jól ismert, konzisztens minőségű térképpel találkozhatnak.

A kényelemnek és egyszerűségnek azonban ára van: ezzel a lépéssel nem csak bezárjuk az érintett alkalmazást a Google ökoszisztémájába, de a testreszabási lehetőségek is korlátozottak, és sajnos a teljesítmény is hagy némi kívánnivalót maga után, különösen, ha ezres nagyságrendű szimbólum (esetünkben járművek, megállók) megjelenítésére van szükség. A legtöbb alkalmazás esetén ezek elfogadható kompromisszumok lehetnek az alacsonyabb fejlesztési költségekért cserébe, számunkra azonban egyre nagyobb nehézséget jelentettek, így más megoldás után kellett néznünk.

Érdekesség, hogy tavaly májusban jelentette be a Google a Maps SDK for Android harmadik verzióját, amely elődeivel ellentétben már önállóan, a Google Play Szolgáltatások nélkül is működőképes, így minden készüléken használható lehet. Az új verzió felépítésében is lényegesen eltér a korábbi változattól: míg a v2 csak egy vékony réteg volt az app és a Google szolgáltatásai között, addig a v3 már minden szükséges függőséget tartalmaz, melyeket így az alkalmazás magával vihet. Ez az érintett alkalmazások méretének 5-8 MB-os növekedésével jár, cserébe viszont számos, régóta fennálló teljesítménybeli problémát oldhat majd meg. Jelenleg az SDK béta stádiumban van, a számos nyitott probléma miatt éles környezetben történő használatra egyelőre sajnos nem alkalmas.

Manapság már számos alternatíva érhető el, melyek változó minőségben és áron állnak rendelkezésre. Olyan térképszolgáltatást kellett választanunk, amely kiforrott, kellőképpen testre szabható, és több százezres felhasználószám esetén is megfizethető.

A lehetőségek mérlegelése után a Mapbox mobile SDK-ra esett a választásunk, amelyhez a térképadatokat közvetlenül az OpenStreetMap-ről szereztük be, a térképeket pedig saját infrastruktúránkban hozzuk létre és ott is tároljuk. Ezzel egyrészt egy rugalmas, teljes mértékben testreszabható megoldáshoz jutottunk, másrészt jelentős költséget takaríthatunk meg, hisz meglévő infrastruktúránkra építve a külső szolgáltatók által kínált lehetőségeknél kedvezőbb költségekkel tudjuk üzemeltetni térképszolgáltatásunkat.

Korábban már találkozhattatok nálunk ezzel a megoldással: két évvel ezelőtt a kerékpáros tervezés bevezetése során használtunk OSM alapú térképeket, hiszen a kerékpárutak itt sokkal részletesebben szerepeltek, mint a Google-nél, valamint a nyílt adatoknak köszönhetően volt lehetőségünk a hiányzóakat pótolni. Kézenfekvő volt tehát, hogy a jelenlegi fejlesztésnél is ebbe az irányba haladjunk tovább.

Hogyan tovább?

Habár a térkép létrehozása nagy előrelépés volt, és kétség kívül a legtöbb munkával járó feladat a fejlesztés során, az integráció még nem teljes: a címek keresésénél továbbra is a Google szolgáltatásaira támaszkodunk, és jelenleg push üzenetek sem érkeznek meg a Google-mentes készülékekre.

A fejlesztés következő fázisában a Huawei Mobile Services (HMS) integrációján dolgozunk, hogy alkalmazásaink teljes értékűen működjenek a Huawei jövőbeni eszközein is, és minél inkább ki tudják használni a platform által nyújtott szolgáltatásokat.

Ahogy láthattuk, a Google-mentes platformok megjelenése izgalmas lehetőségeket és egyben érdekes szakmai kihívásokat rejt magában az alkalmazás-fejlesztők számára. Hamarosan egy több részes blog-post sorozatban számolunk be a Huawei AppGallery, valamint HMS használata során szerzett tapasztalatainkról.