Gowalla a App Inventor? Dře to, přesto jde to.

Kdo by nechtěl mít v telefonu svoje vlastní aplikace. Navíc rychle vytvořené. O App Inventoru na snadnou tvorbu jednoduchých aplikací pro Android jsem se tu nedávno zmiňoval (viz Tečkované zombie retro aneb jak jsem si hrál s App Inventorem). Po prvních pokusech jsem přemýšlel, jak v App Inventoru použít nějakou internetovou službu, případně vytvořit nějaký mashup.

Možností ovšem moc není. Pro komunikaci s internetem (bez toho to prostě nejde) nemáte totiž moc prostoru. Lze použít komponentu TinyWebDB. Není to žádný velký zázrak. Jednak je TinyWebDB označena jako experimental and undocumented, druhak primárně slouží pro přenos dat z webové databáze.

Nicméně s trochou snahy všechno jde. Mým cílem byla jednoduchá aplikace používající Gowalla API. Možná víte, že pro iPhone existuje několik různých Gowalla nástrojů. Ty na Androidu chybí a tak jsem si jeden z nich zkusil pro sebe udělat.

Přímá komunikace Moje aplikace – Gowalla není pomocí App Inventoru možná. Provedl jsem tedy drobnou úpravu serverové části TinyWebDB, aby mé zaslané dotazy přeposlala na Gowalla API, zpracovala výsledek a poslala mi jej zpět do mého telefonu.

TinyWebDB funguje jako jednoduchá databáze párů klíč-hodnota. Posílám jí z Androida dotazy ve tvaru „gowalla:50.24;14.71“. Z prefixu „gowalla“ pozná, že se jedná o dotaz na Gowallu (označil jsem si to pro případ, že bych ji později chtěl použít i obsluhu jiných služeb), zbylá část klíče obsahuje geografické souřadnice.

Databáze sídlící na Google App Engine následně pošle dotaz na Gowalla API. Z odpovědi vyfiltruje žádané informace, sestaví je do vnořeného pole (jinou datovou strukturu než pole totiž App Inventor zpracovat neumí) a to pošle zpátky mě. Všechno proběhne celkem rychle (nejpomalejším krokem je čekání na odpověď Gowally).

A co že tahle aplikace dělá? Nazval jsem ji Gowalla Items a zobrazí mi Gowalla spoty v mém okolí spolu s počtem předmětů, které se na každém z nich nachází. To základní klient Gowally nezobrazuje. Pro mě je to ale zajímavá informace, když jezdím po ČR, sleduju kde a jak se Gowalla mezi uživateli chytá a jedním z ukazatelů je počet předmětů (šlo by to sledovat složitěji, časem asi přidám další parametry, ale proteď mi to stačí).

Takže až zítra pojedu za Honzou Korbelem do Žďárských vrchů, stačí na přestupu v Pardubicích jednou moji aplikaci spustit a za pár vteřin vidím, jak to tam s tou Gowallou válí. A pak, že nejde v App Inventoru udělat užitečná aplikace 😎

Je poměrně jednoduchá, mrkněte sami:

Gowalla-app

To je samozřejmě dáno i tím, že část téhle aplikace se nachází na serveru. Ale ani tam to není žádný velký zázrak. Jeden fetch URL a zfiltrování získaného JSON. Hotovo za chvilku.

Pro mě je to signál, až budu chtít zas něco podobného, kde nemusím hledět na formu a hlavní bude mít to rychle hotové, vzpomenu si zas na App Inventor.

Každopádně klasická cílovka App Inventoru by tady už asi narazila. Přeci jen App Inventor míří na lidi, kteří prakticky moc programovat neumí a nějaká práce s JSON na Google App Engine by pro ně mohla být nepřekonatelnou překážkou. Což je škoda. App Inventoru evidentně chybí komponenta pro rozumnou práci s rozničnými XML a JSON API.

BTW Pokud se vám zmíněná aplikace k něčemu hodí, klidně si ji vyzkoušejte. A pozor, platí to, co minule. Vypněte si auto-rotate obrazovky, jinak se aplikace zasekne (další z problémů App Inventoru). Pro rychlé stažení použijte qr kód:

Chart

Napadá mě, že tohle sledování Gowalla předmětů možná doplním i do Look4square, přeci jen se to na webu může hodit víc lidem.

Reklamy
Příspěvek byl publikován v rubrice Uncategorized se štítky , , , , . Můžete si uložit jeho odkaz mezi své oblíbené záložky.

3 reakce na Gowalla a App Inventor? Dře to, přesto jde to.

  1. Martin Hassman napsal:

    Protože ten dotaz možná padne: Ano, tímhle způsobem by šlo napsat v App Inventoru i kompletního Gowalla klienta. Nicméně to by už byla celkem dost nepříjemná práce. Na tak velké věci se App Inventor už vážně nehodí.

  2. Jiří Doubravský napsal:

    je rozhodně dobrá zpráva (když na chvíli přehlédnu app inventor 🙂 ) že už pro Android existuje i oficiální Gowalla klient – na android marketu, odkaz http://www.appbrain.com/app/gowalla/com.gowalla

  3. Martin Hassman napsal:

    @Jíří to není až tak velká novinka, oficiální klient pro Android existuje už minimálně půl rok, možná dokonce rok, ale tehdy jsem to ještě nesledoval.

Zanechat Odpověď

Vyplňte detaily níže nebo klikněte na ikonu pro přihlášení:

WordPress.com Logo

Komentujete pomocí vašeho WordPress.com účtu. Odhlásit / Změnit )

Twitter picture

Komentujete pomocí vašeho Twitter účtu. Odhlásit / Změnit )

Facebook photo

Komentujete pomocí vašeho Facebook účtu. Odhlásit / Změnit )

Google+ photo

Komentujete pomocí vašeho Google+ účtu. Odhlásit / Změnit )

Připojování k %s