Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
1
System lokalizacji urządzeń mobilnych
Czyli gdzie jestem, kim jestem?
2
Plan prezentacji: Założenia Pojęcia Architektura Czego używamy?
3
Założenia: Język – Java Architektura klient-serwer
Bezpieczeństwo – SSL Adaptacja do istniejącego systemu przesyłu danych opartego o GPRS Łatwość dostępu do danych lokalizacyjnych Niskie koszty użytkowania Wykorzystanie różnych ciekawych i darmowych rozwiązań Keep It Simple Stupid
4
Zarys całokształtu: System lokalizujący samochody przedstawicieli handlowych firmy. Każdy przedstawiciel wyposażony jest w jednostkę GPS, PDA oraz telefon komórkowy pełniący rolę modemu GPRS. Aplikacja agenta umieszczona na PDA zbiera dane o aktualnym położeniu samochodu przez określony czas, następnie łączy się przy użyciu modemu GPRS i wysyła do serwera dane reprezentujące trasę którą przebył agent od ostatniej aktualizacji. W centrali firmy aplikacja kliencka łączy się z serwerem, pobiera z bazy danych informacje o trasie wybranego agenta i prezentuje ją na mapie.
5
Architektura Internet GPRS GPRS Serwer Komputer PC firmowy
Agent mobilny
6
Architektura – Agent mobilny
GPRS Bluetooth Bluetooth Telefon komórkowy PDA GPS Komunikacja pomiędzy Pocket PC a modułem GPS poprzez Bluetooth W tym celu używamy darmowego API – OpenLAPI API to jest podobne do standardu przemysłowego (JSR-179), który niestety często nie jest implementowany na urządzeniach przenośnych. OpenLAPI jest w całości napisane w Javie (J2ME) dzięki czemu może być użyte na każdej platformie sprzętowej Rozważamy przeniesienie aplikacji klienckiej na komórkę (zmniejszenie liczby potrzebnych urządzeń).
7
Pojęcia – MIDlet MIDlet – Jest to aplikacja napisana w języku Java dla urządzeń obsługujących profil MIDP (Mobile Information Device Profile – konfiguracja zawierająca odpowiednie klasy języka J2ME) takich jak telefony komórkowe czy PDA. MIDlety dziedziczą po klasie MIDlet i muszą spełniać kilka wymagań takich jak metody: startAPP(), destroyApp(), pauseApp(), które wywołują odpowiednie stany
8
Pojęcia - Servlet Pojęcie to powinno być już wszystkim naszym wiernym słuchaczom znane Jednakowoż przypomnijmy: Jest to program platformy Java wykonywany po stronie serwera – pozwala na dynamiczną modyfikację zawartości WWW. Servlety zwykle korzystają z zewnętrznych danych, takich jak informacje z formularzy i innych interakcyjnych elementów na stronie WWW.
9
Pojęcia - J2ME J2ME - Java Platform Micro Edition – Specyfikacja Sun Microsystems opisująca uproszczoną platformę Java. Zaprojektowana z myślą o urządzeniach z mocno ograniczonymi zasobami. Posiada własny (okrojony w stosunku do JSE) zbiór klas zwanych konfiguracją. Środowisko to posiada także (w zależności od wybranej konfiguracji) własne maszyny wirtualne.
10
Pojęcia NMEA – Standard opisujący komunikację pomiędzy urządzeniami lokalizującymi GPS (ale nie tylko – również sonary itp.). NMEA używa prostego protokołu opartego na ASCII i łączu szeregowym Google Earth KML (Keyhole Markup Language) – Język bazowany na XML służący do prezentowania informacji geograficznych.
11
Pojęcia - KML Przykładowy dokument KML:
12
Czego używamy - OpenLAPI
Bardzo przydatny tryb emulatora: - Możliwość dostępu do urządzenia GPS przez Bluetooth - Emulowanie urządzenia ruchomego za pomocą pliku NMEA - Emulowanie urządzenia ruchomego z predefiniowanej trasy zapisanej w Google Earth KML. -Emulator pozwala na pisanie aplikacji na sprzęcie klasy PC i przeniesienie kodu na dowolne urządzenie ruchome (to działa!)
13
Czego używamy - OpenLAPI
API to może być „zapakowane” jako część MIDlet’a Zapewnia dostęp do danych lokalizacyjnych modułu GPS (położenie, prędkość etc.) Rozwiązuje problem wielu urządzeń które zostały wyprodukowane przed zaadaptowaniem JSR-179 (wiele różnych interfejsów) Przeszukiwanie log’ów z historią położenia
14
Czego używamy – Net Beans
IDE Mobility Pack – Zawiera Sun Java Wireless Toolkit dla CLDC. Oferuje to dużo gotowych rozwiązań dla urządzeń mobilnych, od API’s graficznych do API’s dla różnych interfejsów Ciekawe rozwiązanie – Paleta. Paleta pozwala w niezwykle intuicyjny sposób zaprojektować stronę wizualną programu, jednocześnie tworząc „szablon” dla całego MIDlet’a
15
Czego używamy – Net Beans
Rozwiązanie zasługujące na uwagę: Paleta
16
Czego używamy – GoogleMapsAPI
Firma Google stworzyła i udostępniła Google Maps API opisujący od podstaw wszystkie funkcje i komponenty potrzebne do tworzenia map na stronach www. Można tworzyć mapy kartograficzne, mapy satelitarne i mapy hybrydowe. API pozwala na rysowanie na mapie dowolnych obiektów – linii, znaczników, kształtów
17
Czego używamy – GoogleMapsAPI
Przykładowy kod rysujący linię składającą się z wielu segmentów (na dwa sposoby)
18
Google Maps API Kod taki umieszczamy na stronie (w naszym przypadku będzie generowany przez servlet):
19
Google Maps API Rezultat na mapie:
20
Do zrobienia Przeniesienie aplikacji klienckiej na telefon komórkowy – zmniejszy to liczbę potrzebnych urządzeń – Dzięki doktrynie Javy „write-once-run-anywhere” nie powinno być to zbyt skomplikowane. Zaimplementowanie bazy danych – Obecnie (faza robocza) dane o trasie są wysyłane jako plik .csv Rozszerzenie systemu o akwizycję innych danych, takich jak paliwo, stan licznika itp.
21
Dziękujemy za uwagę
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.