Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

Mit der Geolocation-Klasse können Events registriert werden, welche die geographische Position des Gerätes mit einen Timestamp bekommen.

Anleitung:

  1. Erstellen des Geolocation objektes. Dieses muss sich an unsere Webseite anhängen, um Events abhören zu können:

    // Wir befinden uns gerade im Konstruktor einer View
    final Geolocation geolocation = new Geolocation(this);
  2. Danach können wir unsere Listener registrieren:

    // Gibt die Latitude und Longitude in der Konsole aus
    geolocation.addPositionListener(position -> {
      final Coordinates coordinates = position.getCoords();
      System.out.println(String.format("Coordinates: lat=%f, long=%f", coordinates.getLatitude(), coordinates.getLongitude()));
    });
    
    // Gebe die Fehlermeldung aus, falls etwas nicht funktioniert
    geolocation.addPositionErrorConsumer(error -> {
      System.err.println(error.getMessage());
    });
  3. Wenn die Position nur einmalig ausgegeben werden soll, kann getCurrentPosition(PositionOptions) aufgerufen werden:

    geolocation.getCurrentPosition(PositionOptions.Default());
  4. Um das Abhören der Position zu starten, kann watchPosition(PositionOptions) aufgerufen werden:

    geolocation.watchPosition(PositionOptions.Default());

Hinweis:

  • Latitude, Longitude und Accuracy werden immer gesetzt.

  • Altitude, Altitude, Accuracy, Heading und Speed müssen vom Browser nicht gesetzt werden, diese Werte können also auch null enthalten!

  • No labels