CT - Creative Technology

Category: pocket PC

Parę słów o urządzeniach z kategorii Pocket PC.
Few words about devices with Pocket PC on board.

Rower, GPS, mapy, czyli GPS Cycle Computer

Jeszcze parę lat temu wstecz byłem niezwykle aktywnym maniakiem rowerowym i każdą wolną chwilę spędzałem na jeździe po Warszawie, jej okolicach, czy udając się na dalsze wypady rowerowe gdzieś w Polskę. Dziś niestety nie ma już tak dobrze i nie dysponuję taką ilością wolnego czasu, a może tylko próbuję sam siebie usprawiedliwiąć? Jedno jest pewne, nadal jestem maniakiem nowinek technologicznych, a miłość do roweru nie przeminęła – w tym sezonie powoli wracam do regularnej jazdy na dwóch kółkach. Tak, czy siak, nie o tym miało być 😛
Z zamiłowania do wspomnianych technologii i rowerowania wynikła potrzeba upolowania zgrabnego softu na platformę Windows Mobile, który pozwalałaby mi wykorzystać odbiornik GPS wbudowany w telefon do ładnego zapisu śladu trasy, a przy okazji dawał możliwość odczytania paru przydatnych informacji podczas jazdy. Gdyby był bezpłatny, to w ogóle byłoby super. Pamiętając, że dużo fajnych rozwiązań można znaleźć na forum xda-developers.com, niegdyś mocno specjalizującym się w patentach na HTC i WinMobile, swoje poszukiwania skierowałem właśnie tam. Cel został osiągnięty – znalazłem GPS Cycle Computer, wtedy jeszcze w wersji 3.

GPS Cycle Computer na wyświetlaczu jednego z telefonów HTC

GPS Cycle Computer

Patent o tyle fajny, że można podczepiać własne mapy rastrowe (jeszcze nie próbowałem), do tego wizualizować na bieżąco trasę, już nie wspominając o takich rzeczach jak aktualna prędkość, prędkość maksymalna, średnia, czas, dystans, różnica wzniesień itd.
Na wróżnienie na pewno zasługuje fakt możliwości wyplucia z programu gotowego pliku w formacie KML, który można podejrzeć w Google Earth lub wciągnąć go do Google Maps.
Do ciekawszych funkcji można zaliczyć określenie częstotliwości próbkowania pozycji GPS, wycinanie z pomiarów postojów, automatyczne wyłączanie GPSa przy spadku poziomu naładowania baterii poniżej jej określonej wartości procentowej pojemności, zmiany jednostek miar i sposobu ich prezentowania (mile, stopy, kilometry i węzły), możliwość oszczędzania baterii przez automatyczne wyłączanie ekranu, zapis śladu GPS do formatu KML i chyba równie popularnego (jeśli nie bardziej) – GPX. Ciekawostką jest również możliwość wykorzystania bezpośredniej integracji programu z usługami portalu CrossingWays.com.

Poniżej wklejka mapki z mojej wczorajszej mini wycieczki rowerowej (mini, bo przejechałem tylko skromne 21km, a nie tak jak bywało kiedyś, gdy często pękało 100km, czy nawet więcej):


Pokaż Rower – 2010.06.12 na większej mapie

Program GPS Cycle Computer możecie pobrać z tego miejsca.

Synchro Google Calendar & Windows Mobile – it works :)))

Dziś rano przeczytałem super newsa – Google w końcu zdecydowało się ułatwić życie swoim userom wykorzystującym urządzenia synchronizujące się przez ActiveSync (Windows Mobile + iPhone). Do tego celu po prostu użyli rozwiązania zgodnego z Microsoftowym Exchange Serverem.

Zmierzając do celu postępujemy zgodnie z opisem newsa. Gdyby pojawiły się problemy i błąd 0x80072f06, to kasujemy ustawienia serwer Exchange, tworzymy je ponownie dokładnie tak samo jak przed chwilą, tylko na końcu zaznaczamy same kontakty. Jeśli synchro się powiedzie, wówczas dodajemy (przez edycję ustawień) kalendarze.

Wielu z was pewnie ma więcej kalendarzy niż tylko jeden, a defaultowo synchronizuje się tylko podstawowy. Rozwiązaniem jest wejście na http://m.google.com/, zalogowanie się, a następnie na usługę Sync (https://m.google.com/sync/settings/iconfig/device) i wybranie stosownego kalendarza. Zastanawiam się, czemu niestety nie ma opcji wyboru kalendarzy, do których mamy tylko prawo odczytu – ich niestety nie można synchronizować.

Tutaj możecie trafić na jeszcze jedną kwestię – nieobsługiwania waszego urządzenia przez aplikację Google. Rozwiązanie jest proste – obsługują iPhone, więc trzeba ściemnić i go zasymulować. Do Firefoxa dogrywamy sobie dodatek User Agent Switcher i ustawiamy nagłówek identyfikujący przeglądarkę na:

  1.  

Dzięki temu możemy sobie wykliknąć już wszystkie kalendarze, które nam “przysługują”.

W narzekaniach ludzi pojawiała się jeszcze jedna kwestia – Google Apps hostowanych pod własną domeną i braku dostępu do tamtych danych. Rozwiązanie też jest proste – trzeba męczyć adminów domeny, żeby załączyli w panelu stosowne opcje (domyślnie dostęp mobilny jest zabroniony).

Dziś tylko po polsku, bo angole już mają sporo miejsc do wyczytania tych tipsów. Miłej zabawy.

PS Żeby nie było, że to jakaś ściema – dziś przetestowałem wszystko na moim HTC Kaiser (HTC TyTn II) z Windows Mobile 6.1 Proffesional.

legia.mobi

Po kilku miesiącach przerwy w końcu udało się ukończyć prace nad nowym projektem – mobilna wersją witryny Legia LIVE!legia.mobi. Ponieważ jest to nasz pierwszy projekt z gatunku mobi, dlatego wszelka konstruktywna krytyka i komentarze są bardzo mile widziane.

After few months of breake finally we have finished works on new projekt – mobile version of Legia LIVE!legia.mobi. Because this is our first mobi-kind project then constructive critic and comments are welcome.

Skype na Pocket PC

Dziś przetestowałem Skype na Pocket PC i musze przyznać, że bardzo fajnie to śmiga. Czas chyba w końcu zakręcić się za iPlusem i wycisnąć coś więcej z tej puszeczki (bo nie wszędzie przecież jest zasięg WiFi).

Google Calendar i Pocket PC (choć nie tylko)

Od jakiegoś czasu jestem szczęśliwym posiadaczem urządzenia z Windows Mobile 6 na pokładzie. Jednym z powodów, który przeważył o jego zakupie była chęć “organizacji czasu”. Tyle się słyszy o możliwościach, jakie obecnie dają urządzenia mobilne, nowoczesne telefony komórkowe, laptopy, …, aleeee … .

Jak to by mogło być, żeby nie było żadnego “ale”. Wszystko jest pięknie, gdy mówimy o hermetycznych, homogenicznych środowiskach aplikacyjnych, gdzie klient i wspierająca go platforma serwerowa pochodzi z jednej stajni, od jednego producenta. Tutaj trzeba przyznać, że faktycznie w wypadku takich okoliczności wszystko wygląda cacy, trzeba mieć tylko na to “trochę” kasy i śmiga aż miło (a jeśli nie, to przed szefem zawsze jest na kogo zwalić winę – “płacimy za licencję, więc pomęczymy się z supportem dostawcy rozwiązania”). Nie mniej nie o tym ma być ten cały post.

Zmierzając powoli do meritum problemu napiszę, że strasznie doskwiera mi brak możności wykorzystania dobrodziejstw dawanych ludziom przez przepiękne, funkcjonalne i całkiem dobrze działające aplikacje web 2.0 oraz wspomagające je pakiety typu Open Source.

Zapewne większość z was zdąrzyła się już spotkać z Google Calendar. Muszę przyznać, że usługa ta bardzo przypadła mi do gustu (pewnie z tego powodu dorobiłem się w niej kilkunastu kalendarzy, każdy do innych “zadań specjalnych”). Dodatkowo prywatnie, ale i służbowo, do obsługi poczty internetowej używam Mozilla Thunderbird. I tutaj właśnie zaczyna się cała zabawa. Któregoś dnia “z nudów” postanowiłem trochę poeksperymentować, lekko pod kątem pewnych projektów, a trochę dla zaspokojenia własnej ciekawości i ułatwienia sobie życia. W ten oto sposób zrodziła się idea sprzężenia całego tego ustrojstwa w jeden, sprawnie funkcjonujący, dostępny 24h na dobę z każdego miejsca na świecie i z dowolnego “terminala”, czasem nawet mobilnego, “system zarządzania kalendarzem/zdarzeniami”.
Google Calendar, jako podstawa całego tego zamieszania, jest niezależny od czego kolwiek. Kolejny etap to integracja na drodze Thunderbird < -> Google Calendar. Jak szybko się okazało, udało się to dość szybko wprowadzić w życie – wystarczyły raptem 2 dodatki.
Pierwszy z nich to Lightning (pl. Błyskawice). Dość ciekawa zabawka, która pozwala z “prostego” i “prymitywnego” Thunderbirda uczynić coś znacznie bardziej zbliżonego do “konkurencyjnego” i komercyjnego Microsoft Outlooka – dodaje funkcjonalność kalendarzy oraz zadań. Swoją przygodę z nim zaczynałem, gdy ten był w wersji 0.7. Jakiś czas temu wyszła 0.8 i interfejs uległ znacznej poprawie, nawet komercyjne projekty już nie musiałyby się wstydzić podobnego (a część na pewno mogłaby zazdrościć).
Drugi dodatek to Provider for Google Calendar. To właśnie dzięki niemu możliwym stało się sprzężenie TB z gCal – dodaje on natywne (GData) wsparcie googlowego formatu iCala.
Co ciekawe i fajne, w ten sposób uzyskałem praktycznie bezproblemowe, dwukierunkowe synchronizowanie “lokalnego” kalendarza TB z gCalem. Póki co sprawuje się nadzwyczaj dobrze (żebym tylko nie zapeszył :P).

Jak widać pierwszy krok w całej batalii poszedł dość gładko i zachęcony pierwszym sukcesem postanowiłem zabrać się za zsynchronizowanie mojego Pocketa z pozostałymi elementami układanki. Niestety tutaj już tak kolorowo nie było, a w zasadzie powinienem pisać, że nadal nie jest. Googlałem za jakimś produktem, nawet komercyjnym, który ułatwiłby pełną synchronizację konta kalendarzowego z urządzeniem mobilnym i niestety nic ciekawego nie znalazłem.
Próby postanowiłem rozpocząć jednak od tych darmowych i pierwszą rzeczą, na która natrafiłem w swoich poszukiwaniach, był GMobileSync. Wszystko niby fajnie, ale potrafi on synchronizować tylko jeden kalendarz. Niestety to nie wystarczyło dla mnie, więc poszukiwania trwały dalej.
Ostatnio natknąłem niby to na cudowną platformę, wynik projektu Open Source, która potrafi zsynchronizować wszystko i ze wszystkim – Funambol. Jakże wielkie było moje rozczarowanie, gdy biorąc się za niego wczesnym wieczorem, musiałem pierwszą potyczkę poddać o 4 rano bez żadnego sukcesu.
Docelową platformą systemową dla Funambola miał się stać Windows 2000, przynajmniej tymczasowo. Instalator pięknie śmignął przez cały proces osadzania softu na dysku, więc nadeszła pora odpalić serwer. No i tutaj pojawiło się pierwsze ale – nie chciał powstać. Walczyłem z tym do 4 rano i dałem sobie spokój – w końcu kiedyś trzeba się trochę przespać. Kolejne starcie podjąłem już “wypoczęty” kolejnego dnia. Okazało się, że autorzy nie przewidzieli bariery 2046 znaków, jakie system Windows 2000 może przyjąć w ramach komend wydawanych z poziomu skryptów powłokowych. Tutaj był koleny cyrk – szukanie po wszystkich skryptach (a tych CMDków w Funambolu nie brakuje), w którym miejscu wykłada się z komunikatem zbyt długiego polecenia.

Kolejny etap stanowiła próba optymalizacji używanych zmiennych bazowych, które w dalszej koleności służyły do budowy zależności bibliotekowych i programowych pomiędzy kolejnymi modułami całej platformy. Ciężko tutaj pominąć fakt, że oparta jest ona o Java (odziwo nawet nie żre to zbyt wiele zasobów) i stąd ta konieczność budowania gigantycznie długich CLASSPATH do każdego z (koniecznych do odpalenia) modułów. Byłoby z tym mniej zachodu, gdybym stawiał to na OSie Linuxowym lub jakimś nowszym dziecku firmy Microsoft. Już taki Windows XP i kolejne są już dużo milsze i pozwalają na przeszło 8000 znaków w poleceniach shellowych, co pewnie zaoszczędziłoby mi całkiem sporo czasu.

Po tym jak udało się odpalić serwer, a w zasadzie w ramach poszukiwania weny pomiędzy kolejnymi próbami jego odpalenia, zacząłem się interesować w jaki sposób połączyć ten serwer z resztą docelowego rozwiązania. Z pomocą przyszła wtyczka do produktów Mozilli – sync4jmozilla.
Tutaj pojawia się kolejna piękna historia. O ile z samym podstawowym kalendarzem TB działała ona całkiem spoko, o tyle już z kalendarzami Google za bardzo nie chciała (udało się bez crasha zsynchronizować serwer Funambola tylko z jednym z 6 testowanych kalendarzy). Samo to już stanowiło dość spory problem. Do tego pojawił się kolejny – z serwerem nie za specjalnie można synchronizować poszczególne kalendarze w sposób niezależny. Za każdym razem trzeba było w opcjach konfiguracyjnych przełączać kalendarz źródłowy – na pewno do czynności wygodnych i funkcjonalnych nie należało. Tak więc po kilkudziesięciu crashach TB dałem sobie spokój z tą częścią zabawy. Nadszedł czas na następne testy.

Żeby nie było za mało rozczarował, to przetestowałem również klienta Funambola na Pocket PC. Zainstalował się elegancko, więc zabrałem się za próbę łączenia go z postawionym już serwerem. Wszystko cacy, tylko jak przyszło w końcu do zsynchronizowania zapisów z telefonu z bazą serwera, to klient lubił sobie złapać zwis mniej więcej w 1/2, czasem 2/3 wszystkich zapisów.

Po tych wszystkich załamkach z Funambolem postanowiłem sobie dać spokój z tą platformą. Postanowiłem jeszcze dać szansę innym rozwiązaniom. W pierwszej kolejności padło na niezwykle często reklamowany, wręcz cudowny projekt – CompanionLink for Google. Niby wszystko pięknie, tylko po instalacji okazało się, że niestety komunikacja musi odbywać się z pośrednictwem klienta pocztowego i niestety darmowego TB na liście nie było (bo przecież Outlook, Lotus, Novel, … są “lepsze”). W ten cudowny sposób odpadła kolejna szansa spełnienia moich “marzeń” 😛

W międzyczasie był jeszcze krótki romans z darmowym ScheduleWorld, który odziwo jest oparty o dobrze już wam znanego Funambola. Załamka przyszła po tym, jak po pięknym zaakceptowaniu ekranu Google Calendara pytającego o udostępnienie danych ScheduleWorld (bo to właśnie on ładnie przekierował do niego), wyłożył się on przy próbie importu danych. Jednocześnie ogłosił, żeby spróbować później.
Podjąłem jeszcze jedną próbę (i chyba na jakiś czas jedną z ostatnich). Otóż tym razem padło na nuevasync.com. Projekt w fazie beta, co niestety dało się odczuć po zarejestrowaniu się – po wpisaniu loginu i hasła serwer odmawiał dalszej współpracy. Przez jakiś czas na bank nie będę się do niego dobijał.

W ten oto sposób przebrneliście przez moje znoje i próby pełnej – dwukierunkowej – synchronizacji pomiędzy ThunderBirdem < -> Google Calendar oraz Pocket PC < -> Google Calendar (czy to z pośrednikami, czy też bez nich). Najbardziej poraża fakt, że Google wypuścił soft dla platformy Blackberry, są mniej lub bardziej udane rozwiązania dla produktów komercyjnych (Lotus, Novel, Microsoft, …), a nie ma czegoś dającego podobną funkcjonalnośc w ramach Open Source lub na zasadach freeware.
Jakiś przełom w tym temacie być może przyniesie, przedstawiony jakiś czas temu, projekt Google Gears przeznaczony dla platformy Windows Mobile 6.x. Założenia ma bardzo fajne (jak np. zdolność pracy aplikacji w trybie offline) i w notce można przeczytać o pierwszych wdrożeniach tego produktu w życie, ale czy przebije się na większą skalę

Tym optymistycznym (mam nadzieję) akcentem kończę ten, dość długi, wpis.

PS Jeśli ktoś zna jeszcze jakąś alternatywę, która działa, to czekam na informację.