Portál AbcLinuxu, 30. dubna 2025 20:29
Pořídil jsem si hodinky LG G Watch R, na kterých běží Android Wear a rozhodl jsem si pro ně udělat jednoduchou aplikaci, která mi řekne, kdy mi jede nejbližší tramvaj. K tomu musím někde získat data, a tak jsem prozkoumal, jak funguje Pubtran a IDOS API.
První generace chytrých hodinek s Androidem je na první pohled k ničemu - je to drahé, vydrží to možná dva dny, nic zas tak úžasného to neumí (navíc v českých končinách) a u téhle platformy se už Google ani netváří že je otevřená - i na pouhou komunikaci s telefonem se používá proprietární API. Přes to všechno koupě nelituju - mít všechny notifikace z telefonu přístupné hned na zápěstí je silně návykové, několik málo užitečných aplikací pro Wear přeci jen existuje a užiju si spoustu zábavy vývojem aplikací & hackováním. Tenhle model je navíc z Android Wear modelů vzhledově asi nejblíže normálním hodinkám a osobně se mi líbí. No a když takhle mluvíte k hodinkám a oni dělají to, co říkáte, přeci jen člověka občas přepadne zvláštní pocit, že budoucnost je tady. Na hodinkách je i budík, a osobně je mi mnohem příjemnější probuzení kvůli vibrování hodinek na zápěstí než za neustálého vyřvávání telefonu.
Pokud vás o téhle platformě něco zajímá, klidně se zeptejte v komentářích.
Činnost, kterou na telefonu často opakuji je vyhledávání nejbližšího spoje mezi určitou skupinou zastávek, kde se často vyskytuji, například ze školy domů nebo naopak z domu do práce. To by se dalo velmi pěkně přenést na hodinky. Původně jsem to logicky chtěl přidat do aplikace Pubtran a mělo to dělat tohle:
Pubtran bohužel není open-source. Včera jsem zkusil napsat tvůrci této aplikace, ale ještě neodpověděl a vzhledem k tomu, že Pubtran je základem oficiální IDOS aplikace za kterou asi dostal zaplaceno, není příliš pravděpodobné, že by Pubtran uvolnil jako open-source.
Ok, takže to bude standalone aplikace. Odkud dostat data? Jako očividné řešení se jeví znásilnění Pubtranu & IDOS API, které používá, a přesně to jsem udělal. Jedná se o příšerně obsáhlé SOAP API bežící na nějaké dotNet věci na adrese http://ttws.timetable.cz/. Je ale uzavřené a je potřeba se k němu přihlásit. Zde pokládám otázku do diskuze: Je toto API součástí veřejně volně dostupných dat zajištěných státem? Má někdo ponětí, jestli je vůbec možné k němu jako třetí strana dostat přístup?
Update: API Idosu je uzavřené, provozuje ho Chaps a prý si ho docela dost brání a přidělit přístup aplikaci, která ukazuje, kdy jede tramvaj, nedejbože zadarmo, se jim pravděpodobně líbit nebude. Na Lupě je rozhovor s jednatelem Chapsu, tudy cesta očividně nevede. Prý ale uvolňují data na požádání ve "strojově zpracovatelném" formátu xls a některé dopravní podniky samotné dělají to stejné. Třeba půjde využít toho, pak by to ani nepotřebovalo internet.
Člověk se skoro diví jaký jsou ty jízdní řády biznis.
V mezičase není nic jednoduššího, než prostě dělat, že jsem Pubtran nebo oficiální IDOS aplikace. Bohužel to ale znamená, že svoji aplikaci nemohu vydat na Play Store, v případě, že se za přístup k tomu API platí, mohlo by to být problematické.
Po kratším boji s generováním validního SOAP požadavku se mi povedlo dostat z API to, co potřebuji a vytvořit aplikaci, kterou jsem si představoval. Momentálně se mi nechce dělat se zadáváním oblíbených spojení na telefonu (navíc proč, když to na Play Store stejně nemůže), takže jsou prozatím napevno nastavené v kódu ty moje.
Ještě jednou připomínám otázku o API - bylo by super, kdybych to mohl i vydat a dostat tak na Wear i nějaké užitečnější aplikace.
Tiskni
Sdílej:
ještě neodpovědělnapraveno
Momentálně se mi nechce dělat se zadáváním oblíbených spojení na telefonu (navíc proč, když to na Play Store stejně nemůže)Není tu jenom Play Store, co to třeba hodit na svobodný F-Droid?
return 4;
+1 F-droid je perfektní a kdo nemá Play (bude nás určitě víc) vybírá hlavně tam.
return 4;
return 4;
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.