Mobile Travel Guide APP

Niedługo pojadę na wycieczkę do Lwowa i wpadł mi do głowy pomysł na ciekawą aplikację, ale raczej nie będę miał czasu by się zająć jej tworzeniem (choć jakby się znalazły za to sensowne pieniądze to pewnie i czas by się znalazł), ale może komuś też pomysł się spodoba.

Od razu mówię, że nie sprawdzałem, czy coś takiego jest gotowe - to zadanie pozostawiam osobom, które by się podjęły realizacji tego pomysłu.

Oprócz samego pomysłu przyszłym developerom dostarczę drobnych wskazówek co do technologii, jakiej ja bym użył, a wszystko zamkne w tym poście.

Mobile Travel Guide App

Aplikacja powinna składać się z paru części:

  • Serwisu internetowego

  • Aplikacji na urządzenia mobilne

  • Ewentualnego API by zwiększyć funkcjonalność

Aplikacja na urządzenie mobilne powinna:

  1. Pozwalać wyświetlać pozycję użytkownika na mapie. Do tego coelu wykorzystałbym Google Location Platform, które w skrócie mówiąc pozwala na pobranie swojej pozycji urządzeniom nie posiadającym GPSu.

    Sam nadajnik/odbiornik GSM wystarczy. Ilość urządzeń wspierających cell-id jest w miarę duża.

    Więcej informacji nt. samego protokołu można znaleźć tutaj:

    Natomiast jeśli nie przepadasz za firmą Google, możesz sam stworzyć takie API. Zobacz szczegóły działania systemu GSM i stacji bazowych lub jak to zrobili inni.

    Na jakieś prezentacji, która obyła się na SFI parę lat temu słyszałem, że lista polskich cell-id i w ich lokalizacji jest dostępna na stronach Urzędu Komunikacji Elektronicznej.

    Geolokację mozna też próbować pobrać gdy urządzenie łączy się przez punkt wifi, podobno z całkiem niezłą dokładnością (tak przynajmniej ktoś twierdził na grupach dyskusyjnych).

  2. W zależności od pozycji pokazywać rzeczy które mogą użytkownika zaciekawić (zabytki, restauracje, imprezy)

  3. Pozwalać planować wycieczki (o tym później troszke napisze)

  4. Udostępniać dane konsulatów kraju użytkownika w zależności od miejsca pobytu, najbliższych szpitali, aptek i paru innych (może jakaś integracja z Zumi?)

  5. Ideałem by było nawigowanie do najbliższych przystanków itp. itd.

Serwis internetowy powinien umożliwiać

  • Rejestrację, zarzadzanie swoim kontem, tworzenie znajomych (wszystko to co jest Web2.0 ;))

  • Wyświetlanie planowanych wycieczek znajomych, z opcją „Moge jechać z Wami?”

  • Tworzenie wakacyjnych podróży, przeglądanie podróży przyjaciół, sciąganie wszystkiego na telefon

  • Tworzenie opisów ciekawych miejsc (ew. Linkowanie do Wikipedii lub do WikiTravel)

  • Informacje przydatne - podczas podrozy (konsulaty itp.)

  • Wyświetlać zdjęcia z okolicy (Flickr API, Picasa API, Panoramio API)

Mobile Travel Guide API powinno pozwalać na

  1. Pobieranie listy najbliższych konsulatów, aptek, szpitali w zależności od pozycji pytającego

  2. Ustalenie pozycji w zależności od cell-id - jeśli nie korzystamy z innych API do tego

  3. Wyświetlenie zdjęć, opisów i innych ciekawych informacji o miejscu w jakim się znajduje użytkownik

W sumie ciekawym by było też dodanie, wyszukiwania znajomych, lub osób którym się nudzi i nie mają co zrobić z wolnym czasem, a chciały by np. czegoś się dowiedzieć jakoś spędzić czas (tutaj może być przewidziana integracja z rodzimymi portalami: fotka.pl, sympatia.pl, nasza-klasa.pl). Google już coś takiego zrobiło - Google Latitude.

Narzędzia i technologie jakich bym użył:

  1. Java ME (aplikacja mobilna) i Java EE (aplikacja serwerowa)

  2. MySQL/PostgreSQL z rozszerzeniem PostGIS jako backend bazodanowy

  3. Jakiś silnik wyszukiwania pełnotektowego

  4. Google Maps API, Flickr API, Panoramio API

Z tego co słyszałem takie coś jest już gotowe na Google Android. Nie wiem jak jest z innymi platformami.

Z tego co się orientuję jest Google Maps For Mobile, ale chyba inne portale jako tako nie mają podobnej aplikacji.

Nim jednak zabierzesz się za pisanie kodu polecam jeszcze przeczytanie publikacji: Mobility Detection Using Everyday GSM Traces.

PS: Jeśli wykorzystasz ten pomysł, masz jakieś pytania, lub po prostu chcesz się skonsultować napisz do mnie, chętnie Ci pomogę! :)

Comments

comments powered by Disqus