Frage

Ich versuche, den aktuellen Speicherort des Geräts mit dem GPS des Geräts abzurufen. Wenn ich mich für Updates registriere (wie unten gezeigt) für LocationManager.GPS_PROVIDER Es rollen keine Updates, aber wenn ich das Gleiche für die gleiche tue LocationManager.NETWORK_PROVIDER Ich bekomme die Updates.

Ich habe es auf meinem Android -Gerät (nicht auf dem Emulator) getestet. Ich habe auch dafür gesorgt, dass das GPS eingeschaltet ist. Andere Apps (nicht meine) können auf meinen Standort zugreifen. Was vermisse ich hier?

LocationListener locationListener = new LocationListener() {
    @Override
    public void onLocationChanged(Location location) {
            locationRetrieved(location, this);
    }

    public void onStatusChanged(String provider, int status, Bundle extras) {}

    public void onProviderEnabled(String provider) { }

    public void onProviderDisabled(String provider) { providerDisabled(); }
};

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);
War es hilfreich?

Lösung

GPS -Start -up ist kein sofortiger Prozess. Der Empfänger muss im Grunde die Position jeder der GPS -Satelliten in der Konstellation kennen, um den Standort zu berechnen

Überprüfen Sie zuerst, ob es einen letzten bekannten Ort gibt, den Sie verwenden können? Die meisten Apps prüfen zuerst danach und suchen dann nach einem Ort.

Andere Tipps

Sie sollten überprüfen, wo Ihr Telefon die Sammlung des Standorts mit GPS ermöglicht.

Wahrscheinlich ist es, dass Sie in Einstellungen -> Ort nur über das Kontrollkästchen für drahtlose Position verfügen. Wenn ja, funktioniert der GPS_Provider nicht.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top