Vývojářský blog Tomáše Hercega

Tisk článku Tisk článku

Jednoduchý klient pro FourSquare na Windows Mobile

[Zpět na blog]

Datum: 22. 4. 2010 16:09       Autor: Tomáš Herceg       Zobrazeno: 2508x

Kategorie: Život, vesmír a vůbec


Nedávno jsem někde něco četl o FourSquare a docela mě ta služba zaujala. Ne proto, že bych měl potřebu nějak šířit, kde právě jsem a co dělám (resp. co mě zase sere), protože na to mám Twitter. Jen tak z čiré zvědavosti jsem si tam založil account s tím, že když někam půjdu, udělám check in.

Bohužel od té doby jsem udělal jeden check in a víc nic. Proč? Jednak moc nikam nechodím, druhak když někam jdu, dost často si nevzpomenu dát to na FourSquare. Největším problémem byla ale nedostupnoust klienta pro Windows Mobile. Existuje sice aplikace WinMoSquare, ale ta mi velmi nevyhovuje z několika důvodů.

Požaduje GPS a neumí si zjistit polohu z mobilní sítě. To je velmi nepříjemné, protože málokdy se mám čas a můžu lítat a honit satelity. Navíc to má větší spotřebu baterie.

Dalším problémem je GUI. Než se aplikace spustí a já mohu něco udělat, musím si prohlídnout asi 15 sekund animace a úvodní obrazovky. Proboha a sakra proč? Ovládání té aplikace je přizpůsobeno pro patlání na displeji, samé animace, které zdržují, no hrůza. Takhle by se aplikace dělat neměly. Když už vlastní vzhledy a animace, tak tak, aby to nerušilo a aby to bylo rychlé. Jinak je to cesta do pekel.

WinMoSquare mi tedy nevyhovoval a když jsem nedávno zjišťoval, jak vykopat z ID buňky mobilní sítě GPS pozici, našel jsem článek Learn How to Find GPS Location on Any SmartPhone, and Then Make it Relevant na CodeProjectu.

A tak jsem dnes asi v jednu hodinu odpoledne sednul k Visual Studiu, vykopal pár tříd z výše uvedeného článku a udělal jednoduché GUI. Celkem to zabralo něco málo přes 2 hodiny i s napsáním tohoto článku. Není to vzor elegance, zvláště třídy, které pracují s mobilní sítí a GPS by zasloužily dost refaktoringu (nechal jsem je tak, jak jsou, jen je použil), rozhodně by aplikaci neškodil robustnější návrh atd.

Ale základní funkcionalitu, kterou chci a která mi stačí, to nějak umí. Seznam naposledy navštívených míst (abych mohl dělat check in na oblíbených místech i bez chytání polohy), nalezení polohy dle mobilní buňky a zobrazení zajímavých míst poblíž. Neztrácel jsem čas s implementací nějakých odznaků, starostů, diskusí u míst a já nevím čeho všeho ještě, to si můžu prohlédnout na webu, když na to budu mít čas. Neumí to přidávání nových míst, ale to také nebudu dělat nijak často. Heslo se posílá po síti v plaintextu (je tam jen basic authentication), ukládá se také nešifrované. Je to opravdu jen triviální a velmi rychlá implementace.

Naposledy navštívená místa Místa v nejbližším okolí Check In

Aplikace vyžaduje .NET Compact Framework 3.5 a testoval jsem ji jen na svém zařízení s rozlišením 480x640. Na jiných nevím, jak to bude vypadat a fungovat.

Pokud má někdo o tuto aplikaci (polotovar, nedodělek, open source) zájem, můžete si ji stáhnout následujícím odkazem. Pokud byste měli zájem doimplementovat do ní nějaké další funkce, můžete to zkusit. V nejbližších dnech ji dám na CodePlex, takže o úpravy se budete moci podělit.

Pokud nechcete zdrojové kódy, ale jen aplikaci, zkopírujte si obsah složky Bin\Debug do adresáře na kartě nebo v Program Files a vytvořte si ve Start Menu odkaz.


> Na začátek

 

Hodnocení:

Hlasů: 1
Zvolte své hodnocení

Tomáš Herceg

Jsem hlavním softwarovým architektem ve společnosti Riganti. Mám dlouholeté zkušenosti s technologiemi ASP.NET, Silverlight, WPF a XNA. Působím též jako lektor ve společnosti Gopas a již třetím rokem jsem držitelem ocenění Microsoft Most Valuable Professional.

Podpořte vznik dalších článků
RSS Feed RSS Feed

Diskuse

1 

Sledování

Datum: 22.4.2010 16:17
Autor: Jakub Čermák
Hodnocení autora: 50
Příspěvků: 164
Nemáš na sledování tvého pohybu lepší google latitude?
 
           [Odpovědět]
 
Hodnocení: 0 Čekejte, prosím...

Re: Sledování

Datum: 22.4.2010 21:21
Autor: Tomáš Herceg
Hodnocení autora: 1660
Příspěvků: 3533
Já ho nechci sledovat permanentně, ale jenom když řeknu, že jsem právě tady. Navíc FourSquare je spíš databáze hospod a restaurací :-).
 
           [Odpovědět]
 
Hodnocení: 0 Čekejte, prosím...

Diamond a chybová hláška

Datum: 22.4.2010 17:32
Autor: Jiří Sedláček
Hodnocení autora: 2
Příspěvků: 7
Ahoj, tak jsem teda stáhl aplikaci a použil jsem jen Debug adresář, jenž jsem šoupnul na Internal Storage (vestavěnou paměť) v Diamondu (WM 6.1 professional, jakejsi image). Po spuštění mi to hodilo výjimku NullReferenceException v několika funkcích (namátkou get_CurrentPosition(), get_HasPosition(), timer1_Tick(Object Sender, EventArgs e) a dalších nejspíš systémových funkcích. Vypadá to tedy na GPS problém, jinde mi GPS volání funguje.

Nechci si sem instalovat prostředí, abych to kompiloval, píšu to jen jako ticker do buglistu. V podstatě tomu ani nemusíš věnovat pozornost, ale pokud by se ti to chtělo opravit nebo tak něco, tak by to bylo fajn.

Resp. asi by mi stačilo porazení nějakého opravdu lehkého kompilátoru třeba do příkazový řádky nebo tak něco, ať nemusím instalovat celý prostředí.

Jirka
 
           [Odpovědět]
 
Hodnocení: 1 Čekejte, prosím...

Re: Diamond a chybová hláška

Datum: 22.4.2010 21:24
Autor: Tomáš Herceg
Hodnocení autora: 1660
Příspěvků: 3533
Máš tam .NET Compact Framework 3.5? http://www.microsoft.com/downloads/detai...
 
           [Odpovědět]
 
Hodnocení: 0 Čekejte, prosím...

Re: Diamond a chybová hláška

Datum: 22.4.2010 22:45
Autor: Jiří Sedláček
Hodnocení autora: 2
Příspěvků: 7
ju, dokonce jsem to ted zkoušel i znova instalovat. taky mi to je divný.
 
           [Odpovědět]
 
Hodnocení: 0 Čekejte, prosím...

Re: Diamond a chybová hláška

Datum: 23.4.2010 0:06
Autor: Tomáš Herceg
Hodnocení autora: 1660
Příspěvků: 3533
Tak v tom případě je to asi chyba v aplikaci, mrknu, čím by to mohlo být.
 
           [Odpovědět]
 
Hodnocení: 0 Čekejte, prosím...

Re: Diamond a chybová hláška

Datum: 23.4.2010 0:19
Autor: neregistrovaný (94.112.138.28)
Hodnocení autora: není
Příspěvků: 0
Dík, pač ta aplikace od toho ... nevím ... je dost na prd. A na mobilní webový verzi je to otrava. :)
 
           [Odpovědět]
 
Hodnocení: 0 Čekejte, prosím...

Překlep v adrese

Datum: 23.4.2010 20:45
Autor: Ondřej Linhart
Hodnocení autora: 1131
Příspěvků: 2388
V článku je překlep na webové adrese hned v prvním odkazu. Má tam být http://foursquare.com/
 
           [Odpovědět]
 
Hodnocení: 1 Čekejte, prosím...

Nefunkční na HTC HD2

Datum: 21.8.2010 23:05
Autor: neregistrovaný (213.211.37.19)
Hodnocení autora: není
Příspěvků: 0
Ahoj,
zkoušel jsem tvoji aplikaci na HTC HD2. Hned po startu (ještě před přihlášením) vypisuje chybu:
NullReferenceException
v
MobileSquare.MainForm.get_CurrentPositon()
...

Pokud máš zájem, můžu poslat celou chybu.
 
           [Odpovědět]
 
Hodnocení: 0 Čekejte, prosím...
1 
 

VBNET.CZ | © 2007 Tomáš Herceg, Tomáš Jecha | Kopírování a přejímání jakéhokoliv obsahu z tohoto webu je bez písemného svolení autorů zakázáno.