Jízdní řády na telefonech s Ubuntu. Vývoj, aktuální stav a výhled do budoucna.

15. 02. 2016 8:00:00
Má aplikace je na telefonech již několik měsíců k mání. Co mě vedlo k její tvorbě, jak probíhal vývoj, jaké trable jsem musel při vývoji překonat, kde se aplikace nachází dnes i co do budoucna plánuji se zde dnes pokusím nastínit.

Není to tak dávno, co jsem si pořídil oficiální telefon s operačním systémem Ubuntu. Sice již více než rok a půl provozuji Ubuntu na svém tabletu, ale stále jsem měl v kapse telefon s Androidem a oblíbenou aplikací Pubtran, která mě doprovázela do všech koutů republiky. S kompletním přechodem na Ubuntu se vše změnilo.

Ubuntu nepodporuje aplikace z Androida, spoléhá na svůj vlastní ekosystém. Není tedy divu, že zde nenajdete většinu známých aplikací a veskrze si musíte vystačit s webovými verzemi, pokud vůbec existují. Nutno ale podotknout, že se za rok a půl co Ubuntu provozuji situace výrazně zlepšila, jak rozšířením počtu nativních aplikací, tak především kvalitou a přívětivostí těch již dostupných. Nebudete tak postrádat například emailového klienta, mapy, komunikačního klienta služeb Telegram a neoficiálně Hangouts či navigaci, všechny velmi povedené. Nicméně, vzhledem k faktu, že jsou telefony s operačním systémem Ubuntu stále vzácností, je zřejmé, že nabídka lokálních aplikací je velmi chudá a pokud vůbec, tak sestává pouze z webových aplikací – tedy v podstatě odkazů do zjednodušeného webového prohlížeče, které lze stáhnout z obchodu Ubuntu.

Jelikož vyhledávám jízdní řády zcela pravidelně, nezřídka i několikrát denně, zasáhla mě absence dedikované aplikace podobné Pubtranu velmi těžce. To především proto, že jsem byl nucen spouštět webový prohlížeč pokaždé, když jsem potřeboval najít spojení. Při každém načtení webu IDOS jsem byl dotázán zda chci využít aktuální polohu zařízení, na mobilních datech, a zvláště s protočeným FUPem, trvalo načtení samotné stránky velice dlouho a z webového interface bylo kopírování spojení pro případné odeslání např. skrze chat téměř nemožné. Postupně mi svízelnost situace začala lézt natolik na nervy, že jsem začal pokukovat po možnosti vytvořit vlastní jednoduchou aplikaci pro vyhledávání spojení.

Data Seznamu nebo Chapsu?

Protože jsem byl znalý situace, kterou si prošel Pubtran počátkem roku 2015, obával jsem se Chapsu a jejich nepříjemného vedení a kontaktoval Seznam, zda je jejich API pro jízdní řády veřejné, popřípadě jaké jsou podmínky jejího využívání. Naneštěstí odpověď, kterou jsem obdržel, byla spíše taková, jakou jsem očekával od Chapsu – tedy zamítavá a nicneříkající.

20. srpna 2015: „Momentálně neplánujeme API zveřejňovat. Pokud bychom změnili stanovisko v této věci dáme Vám vědět.“

Naštěstí jsem 4. října na internetu objevil novou aplikaci pro Android, pojmenovanou „MHD Tabule“. Ihned jsem kontaktoval autora a zeptal se ho, jak získává data pro svou aplikaci – a k mému překvapení to byl Chaps, od nějž jsem hned následující den dostal odkaz k veřejné dokumentaci jejich API. A zde to vše začalo. Jen tak mimochodem, můj pohled na Chaps se také mírně upravil – vzhledem k tomu, jaké problémy má samotná firma za sebou, ji stále nemám příliš v oblibě, ale komunikace s lidmi v ní byla doposud velmi vstřícná a plodná. Dva lidé, Bohumír Bednařík a Tomáš Chlebničan mi byli velmi nápomocni a patří jim velké díky za jejich pomoc.

Zpočátku jsem neměl přístup k celému API, jen veřejně dostupnému subsetu. Z toho důvodu pokrývala má aplikace původně pouze MHD Prahy a evropské Vlaky a vyhledávání bylo rychlostně omezeno. Přesto se pro mé pražské pojíždění jednalo o výrazné vylepšení oproti hledání spojení na ještě pomalejším a datově výrazně náročnějším webu.

Velké verze aplikace

První verze, 0.0.4 (7.10.2015)

Trvalo to jen 3 dny a měl jsem funkční koncept, takže jsem už 7. října publikoval první verzi do obchodu Ubuntu. Nejvíce času mi zabralo pochopení samotného API a tvorba aplikace, jelikož jsem byl v QML stále ještě relativně nováčkem. Bohužel nemám obrázky prvních verzí mé aplikace, každopádně se v tomto okamžiku jednalo ještě o viditelně rozdělanou práci obsahující velké množství chyb.

0.1.2 (8.10.2015)

Oprava zobrazování nápovědy zastávek, oprava scrollování stránky, přidána možnost kopírovat spojení do clipboardu, možnost vyhledávat vlaková spojení, poslední vyhledávání uloženo a předvyplněno po startu aplikace, spousta vizuálních změn a další menší opravy a funkce.

0.2 (11.10.2015)

Uvedení grafické reprezentace vyhledaného spojení – a poznámka, v níž varuji před upgradem, jelikož mé rozšíření nebylo zatím, na rozdíl od textové reprezentace, příliš spolehlivé.

// Víceméně opraveno ve verzi 0.2.3.1 (11.10.2015).

0.2.5.0 (15.10.2015)

Přidána obrazovka s detailem spojení

0.3.3 (20.11.2015)

Zobrazování pozice vozidla na základě času v jízdním řádu v detailu spojení.

0.4 (5.1.2016)

Aktualizace na nejnovější komponenty Ubuntu. Nový a tenčí vzhled hlavičky aplikace, odstranění modrého pozadí hlavičky kvůli změnám v komponentě, ukládání názvů zastávek pro jednotlivé dopravce pro použití offline/rychlejší vyhledávání, rozšířená obrazovka nastavení a první anglický překlad.

0.5.3 (10.1.2016)

Schopnost procházení v seznamu vyhledávaných spojení na předcházející a následující spoje.

0.6 (21.1.2016)

Společnost Chaps mi poskytla privátní klíč pro jejich API – díky čemuž se aplikace po přepsání části kódu do C++ (privátní klíč zveřejněn jen v binární podobě, nikoliv přímo) rozrostla o kompletní jízdní řády poskytované serverem idos.cz, tj. MHD ČR i SR, evropské vlaky, letadla a místní integrované systémy. Kromě toho v této verzi došlo ke změnám vzhledu aplikace, novým možnostem nastavení a byl přidán easter egg.

0.7 (4.2.2016)

Uvedení adaptivního rozvržení aplikace – v režimu na šířku a na větších displejích je aplikace zobrazena v režimu dvou sloupců.

Kromě zde uvedených verzí, které přinesly větší viditelné změny, jsem v aplikaci co chvíli prováděl změny v kódu uvnitř, přičemž mohu s radostí konstatovat, že většinu nepořádku vzniklého při startu vývoje této aplikace jsem již odstranil. Několikrát jsem kompletně přepsal některé části aplikace, ať už pro opravu chyb, větší efektivnost nebo jen lepší čitelnost kódů a jeho čistotu.

Stav dnes

Aktuální verze aplikace je dobře použitelná jak na tabletu tak na mobilním telefonu. Díky privátnímu klíči je svižná a snad i spolehlivá. Dokáže hledat spojení mnoha dopravců i jejich kombinací a ukládá si některá data pro rychlejší manipulaci na pomalém připojení či offline, což se hodí zejména při vyhledávání v metru či na horách.

Co bude dál?

Budoucí vývoj aplikace je do velké míry ve hvězdách, jelikož nejsem schopen nic zaručit, a to jak mou vlastní činnost tak ani případné zrušení platnosti privátního klíče získaného od společnosti Chaps. I přes to však plánuji aplikaci dále zdokonalovat a opravovat nalezené chyby. Vzhledem ke skutečnosti, že ji sám aktivně a hojně využívám, jsem poměrně motivován na aplikaci i nadále pracovat. Do budoucna bych si přál především doplnit podporu pro předvyplnění výchozí stanice podle aktuální lokace přístroje s Ubuntu – jak toho ale s poskytnutým API docílit a zda je to vůbec možné jsem zatím bohužel nebyl schopen zjistit.

Aplikaci Transport pro Ubuntu si od října stáhlo 29 unikátních uživatelů, většina po poslední aktualizaci OTA-9, jelikož má aplikace není od počátku ledna se starými verzemi systému kompatibilní. Ačkoliv se toto číslo nezdá být příliš vysoké, předpokládám, že u nás o mnoho více uživatelů mobilního Ubuntu nebude. Číslo ale postupně roste, a třeba po MWC 2016 a uvedení další skupiny zařízení s operačním systémem Ubuntu poroste ještě rychleji.

Nově je zdrojový kód aplikace zveřejněn pod licencí GPLv3 a je dostupný v celém svém rozsahu (kromě privátního klíče) na GitHubu: https://github.com/zubozrout/Transport

V obchodě Ubuntu najdete mou aplikaci zde: https://uappexplorer.com/app/transport.zubozrout

Závěrem bych chtěl ještě jednou velice poděkovat lidem, kteří mi při vývoji aplikace pomáhali. V životě jsem nedělal žádný podobný projekt a práce na něm mě dosud velice naplňovala. Z dobrého hodnocení, které jsem zatím v obchodě Ubuntu obdržel, mám radost a těší mě, že z ní nemám užitek jen já, ale i několik dalších „nadšenců“ s operačním systémem Ubuntu v našich končinách.

Autor: Martin Kozub | pondělí 15.2.2016 8:00 | karma článku: 9.77 | přečteno: 360x

Další články blogera

Tato rubrika neobsahuje žádné články...

Další články z rubriky Věda

Jan Mestan

Konvekční proudění v analogovém přístupu - kterak plášťová konvekce nemůže hýbat deskami

Země je postupně chladnoucím tělesem. Oproti Slunci nedisponuje fúzním reaktorem ve svém nitru. Země umí vlastně jen chladnout - na jejím povrchu se už před miliony a miliardami lety vysrážela tuhá krusta.

14.12.2018 v 19:25 | Karma článku: 10.95 | Přečteno: 306 | Diskuse

Libor Čermák

Jak postavit vesmírný betlém?

Vesmír, jak známo, ukrývá objekty nejrůznějších tvarů. A teď si představme, že pokud některé z nich vybereme, dokážeme z nich vystavět celý vánoční betlém. Nevěříte? Vydejme se tedy spolu na vánoční cestu Mléčnou dráhou.

14.12.2018 v 10:49 | Karma článku: 6.74 | Přečteno: 153 |

Petr Hlinomaz

O změnách klimatu odborně i neodborně

Rád chodím do Antikváriátů nakupovat odborné knihy se zaměřením meteorologie a klimatologie, zejména starší. Ve vědě to nechodí tak, že se prodává jenom to nové, protože je to moderní. ...

13.12.2018 v 21:43 | Karma článku: 6.40 | Přečteno: 335 | Diskuse

Dana Tenzler

Kosmická archeologie - jakou minulost má naše Slunce?

Vesmír se neustále mění. O nějakém pevném bodu si můžeme nechat jen zdát. Ani naše Slunce není výjimkou - má za sebou dlouhou a zajímavou cestu Galaxií. (délka blogu 3 min.)

13.12.2018 v 8:00 | Karma článku: 21.11 | Přečteno: 431 | Diskuse

Karel Tejkal

Mladé stvoření, kreacionisté a ošklivá věda

Rád si přečtu knihu nebo článek, který populární formou přibližuje nejnovější poznatky, ale i problémy přírodních věd. Formálně stejná témata někdy nabízí kreacionisté. Proč je však kreacionistická "literatura" tak odpudivá?

12.12.2018 v 10:13 | Karma článku: 14.07 | Přečteno: 378 | Diskuse
Počet článků 27 Celková karma 0.00 Průměrná čtenost 932
O autorovi:
Aktuálně student, jehož zájmem jsou především otevřené technologie a organizace, podporující opensource.

» Předchozí blog


Martin Kozubna Google+
Osobní web
iUbuntu.cz

PS: Linux používám od roku 2004. Za tu dobu stihl obsadit většinu mobilních zařízení a postupně dobývá i segment osobních počítačů. Nevěřte lidem, kteří vám budou tvrdit, že Linux nelze používat nebo že není uživatelsky přívětivý. Kdyby tomu tak skutečně bylo, nevznikly by projekty jako Google Android nebo Ubuntu.

Seznam rubrik

více

Najdete na iDNES.cz