API dei servizi basati sulla posizione

È possibile utilizzare i pacchetti in LBS API per:

  • Trovare una posizione
  • Visualizzare informazioni su una mappa
  • Valutare la durata e la distanza di un viaggio
  • Eseguire il geofencing (contrassegnare un'area da monitorare in modo da evidenziare gli eventi una volta effettuato l'accesso all'area)

Ricerca di una posizione

È possibile recuperare le informazioni sulla posizione di uno smartphone BlackBerry® mediante uno dei seguenti servizi:

  • GPS: fornisce le informazioni sulla posizione tramite i satelliti GPS. È possibile recuperare le informazioni sulla posizione GPS mediante JSR 179 Location API, fornita nel pacchetto javax.microedition.location, o le estensioni BlackBerry a JSR 179, incluse nel pacchetto net.rim.device.api.gps.

  • Geolocation: fornisce informazioni sulla posizione mediante il posizionamento del ripetitore per cellulari e i punti di accesso WLAN. Per l'utilizzo del sevizio di geolocation, non è richiesta la tecnologia GPS sullo smartphone. La funzione di geolocation è utile per le applicazioni che richiedono una posizione approssimativa e che vengono utilizzate in luoghi chiusi (ad esempio, applicazioni che consigliano punti di interesse locali). È possibile recuperare il servizio di geolocation tramite il pacchetto net.rim.device.api.gps.

  • Geocoding e geocoding inverso: fornisce le coordinate geospaziali di un indirizzo (geocoding) e fornisce un indirizzo per le coordinate geospaziali (geocoding inverso).

Visualizzazione delle informazioni su una mappa

Dopo aver recuperato la posizione per uno smartphone BlackBerry, è possibile visualizzare le informazioni sulla posizione in BlackBerry® Maps o nelle mappe personalizzate.

BlackBerry Maps è un'applicazione di posizionamento geografico in grado di visualizzare una mappa, la posizione dello smartphone BlackBerry, un itinerario tra un punto di partenza e un punto di arrivo e i punti di interesse su una mappa.

Per creare mappe personalizzate, è possibile aggiungere un oggetto MapField o RichMapField a una schermata, come per l'aggiunta degli altri componenti dell'interfaccia utente. Una volta creata una mappa personalizzata, è possibile utilizzarla in uno dei seguenti modi:

  • Per specificare le posizioni sulla mappa
  • Per controllare il comportamento della mappa
  • Per creare e visualizzare forme e oggetti personalizzati
  • Per visualizzare oggetti mappabili da aggiornare dinamicamente in base alle modifiche delle informazioni
  • Per aggiungere campi e sovrapposizioni alla mappa
  • Per personalizzare l'aspetto della mappa

L'applicazione può interagire con BlackBerry Maps nei seguenti modi:

  • Richiamare BlackBerry Maps dall'applicazione tramite il metodo Invoke.invokeApplication() con i parametri MapsArguments. È possibile visualizzare quanto segue:
    • Una posizione per un indirizzo nell'applicazione Contatti
    • Una posizione per un punto di interesse
    • Una posizione in corrispondenza di coordinate specifiche
    • Una posizione o un itinerario tramite un documento sulla posizione
    • Una posizione tramite le informazioni di ricerca locali
    • tramite sovrapposizione KML
  • Apre BlackBerry Maps da BlackBerry Browser

È possibile creare una finestra di dialogo del selettore di posizione che consente a un utente di scegliere una posizione da un elenco di selezioni disponibili, come definito dall'utente. È possibile definire la finestra di dialogo del selettore di posizione con Location Picker API, fornita nel pacchetto net.rim.device.api.lbs.picker. La posizione viene passata tramite un oggetto javax.microedition.location.Landmark.

Stima della durata e della distanza di un viaggio

È possibile recuperare la durata e la distanza stimate di un viaggio tra due punti ad una data e ad un'ora specifiche tramite Travel Time API. Attualmente, Travel Time API fornisce stime solo per viaggi effettuati in automobile negli Stati Uniti e in Canada.

Per richiedere una stima della durata del viaggio, recuperare un'istanza della classe TravelTimeEstimator. Utilizzare il metodo requestArrivalEstimate () e specificare le coordinate per le posizioni di partenza e di arrivo e l'ora di partenza. La richiesta viene inoltrata a un server Travel Time, che identifica un itinerario tra le posizioni di partenza e di arrivo e utilizza informazioni sul traffico memorizzate e in tempo reale per calcolare una stima della durata del viaggio. La stima riflette le condizioni note alla data e all'ora specificate. La stima della durata del viaggio viene restituita da TravelTimeEstimator che utilizza un'istanza della classe TravelTime.

Esecuzione del servizio di geofencing

È possibile utilizzare la classe Geofence fornita nel pacchetto net.rim.device.api.location per definire le aree delimitate da confini geografici e ricevere notifiche quando un utente BlackBerry entra nell'area specificata o esce da quest'area. Un'area delimitata da confini geografici è un'area geografica virtuale di interesse che è possibile definire tramite un raggio intorno a una posizione oppure da coordinate che definiscono un poligono per la posizione.

L'applicazione deve creare l'istanza di un oggetto Geofence e implementare GeofenceListener per ricevere notifiche per gli eventi di geofencing (quando un utente entra nelle aree delimitate da confini geografici o esce da queste aree). Ogni istanza di Geofence può elaborare fino a 20 aree monitorate simultaneamente.

Argomento successivo: API di protezione
Argomento precedente: API multimediale

Le informazioni sono state utili? Inviateci i vostri commenti.