Apertura di BlackBerry Maps utilizzando un luogo di riferimento

È possibile aprire BlackBerry Maps per visualizzare la posizione di un luogo di riferimento su una mappa specificando una matrice di oggetti Landmark. Un oggetto landmark può contenere il nome di un'etichetta visualizzata sullo schermo, una descrizione, coordinate geospaziali e un indirizzo civico.

Se non vengono specificate le coordinate, BlackBerry Maps può utilizzare l'indirizzo per individuarle. Se le coordinate e l'indirizzo non sono validi, BlackBerry Maps non visualizza la posizione del luogo di riferimento.

  1. Importare le classi richieste.
    import net.rim.blackberry.api.invoke.*;
    import javax.microedition.location.*;
  2. Creare una classe e un costruttore da utilizzare per richiamare BlackBerry Maps.
    public class invokeMaps
    {
        public invokeMaps ()
        {
        }
    }
  3. Nel costruttore, creare una matrice di oggetti Landmark da utilizzare per aggiungere le informazioni sul luogo di riferimento.
    Landmark[] landMarks = new Landmark[3];
  4. Nel costruttore, creare una matrice AddressInfo e richiamare AddressInfo.setField() per specificare l'indirizzo civico. Aggiungere la matrice AddressInfo a Landmark.
    AddressInfo addressInfo = new AddressInfo();
    addressInfo.setField(AddressInfo.STREET, "455 Phillip St");
    addressInfo.setField(AddressInfo.CITY, "Waterloo");
    addressInfo.setField(AddressInfo.STATE, "Ontario");
    landMarks[0] = new Landmark("AAA", "Description 1", null, addressInfo);
  5. Nel costruttore, creare un'istanza della classe QualifiedCoordinates e specificare le coordinate. Aggiungere QualifiedCoordinates alla matrice Landmark.
    QualifiedCoordinates coordinates =
      new QualifiedCoordinates(45.4, -75.1, 0, 0, 0);
    landMarks[1] = new Landmark("BBB", "Description 2", coordinates, null);
    coordinates = new QualifiedCoordinates(45.3,-75.3,0,0,0);
    landMarks[2] = new Landmark("CCC", "Description 3", coordinates, null);
  6. Nel costruttore, creare un'istanza della classe MapsArguments utilizzando la matrice Landmarks come argomento. Richiamare Invoke.invokeApplication() per aprire BlackBerry Maps. Passare l'oggetto MapsArguments.
    MapsArguments ma = new MapsArguments(landMarks);            
    Invoke.invokeApplication(Invoke.APP_TYPE_MAPS, ma);

Esempio di codice: apertura di BlackBerry Maps utilizzando un luogo di riferimento

import net.rim.blackberry.api.invoke.*;
import javax.microedition.location.*;
public class invokeMaps
{
    public invokeMaps ()
    {
        Landmark[] landMarks = new Landmark[3];
        AddressInfo addressInfo = new AddressInfo();
        addressInfo.setField(AddressInfo.STREET, "455 Phillip St");
        addressInfo.setField(AddressInfo.CITY, "Waterloo");
        addressInfo.setField(AddressInfo.STATE, "Ontario");
        landMarks[0] = new Landmark("AAA", "Description 1", null, addressInfo);
        QualifiedCoordinates coordinates =
          new QualifiedCoordinates(45.4, -75.1, 0, 0, 0);
        landMarks[1] = new Landmark("BBB", "Description 2", coordinates, null);
        coordinates = new QualifiedCoordinates(45.3,-75.3,0,0,0);
        landMarks[2] = new Landmark("CCC", "Description 3", coordinates, null);
        MapsArguments ma = new MapsArguments(landMarks);
        Invoke.invokeApplication(Invoke.APP_TYPE_MAPS, ma);
  }
}

Le informazioni sono state utili? Inviateci i vostri commenti.