Geschwindigkeit ist "null" mit Geolocation-Plugin auf Android 5+

8

speed Wert ist immer null in Android 5+. Wir verwenden diese:

  • Kern: Cordova - 5.1.1
  • Plattform: Cordova-Android 4.0.2
  • Plugin Version: 1.0.1
  • Geräte: Samsung Galaxy S4 (A5.0.1), Nexus 5 (A5.1.1), LG G3 Stylus D690 (A5.0.2).

Wir haben dieses Problem jetzt, nachdem wir auf Android 5+ aktualisiert haben.

Funktioniert immer noch gut auf Android 4 und iOS. Wir haben versucht sowohl getCurrentPosition als auch watchPosition - kein Glück. HighAccuracy ist true .

Wir hatten Abhilfe zu implementieren für Android 5 getCurrentPosition mit (statt gut funktionierendes watchPosition für andere Betriebssysteme), die in den Ergebnissen oft in Geschwindigkeit bis zu 400 km / h für einige Intervalle berechnet wird, während mehr Rechen oder weniger genaue Geschwindigkeit insgesamt.

  • Gibt es irgendwelche Berechtigungen für Android 5, die uns fehlen?
  • Was können wir tun, um dieses Problem zu lösen?

Wir möchten einen Code für alle Plattformen verwenden, wie er sein sollte, und weiterhin watchPosition verwenden, da es gut funktioniert.

  • Irgendwelche Vorschläge? Ist das ein bekanntes Problem?

Zu einem verwandten Hinweis: Gibt es irgendwelche bekannten Fehler / Probleme für Cordova mit Galaxy-Geräten im Allgemeinen? Danke!

    
andreyzenkov 29.07.2015, 15:15
quelle

2 Antworten

2

navigator.geolocation.getCurrentPosition() prüft nur auf GPS, wenn die Option enableHighAccuracy auf true (Standard) gesetzt ist. Sie könnten enableHighAccuracy als false festlegen.

%Vor%

Sie benötigen möglicherweise folgende Berechtigungen

%Vor%

Ich hoffe, es hilft.

    
Let'sRefactor 12.01.2016 14:27
quelle
1

Cordova stellt keinen systemeigenen Code für die Geolokalisierung zur Verfügung, es fügt nur die Berechtigungen hinzu, um die Geoposition der Webansicht zu aktivieren. Wenn also etwas nicht funktioniert, liegt das Problem an der Chrom-Implementierung.

Sie können versuchen, das crosswalk plugin zu verwenden, um zu sehen, ob dort geolocation besser funktioniert (es fügt Ihrem Projekt einen aktualisierten Chrom-Webview hinzu), oder verwenden Sie die Version 0.3.6 des Plugins, da dies die neueste Version mit nativem Code war.

BEARBEITEN: Es gab einen Fehler beim Übergeben der Parameter von Cordova an die Webansicht Geolocation, die Ihr Problem verursachen könnte, versuchen Sie es mit der neuesten Version des Plugins

%Vor%     
jcesarmobile 12.01.2016 08:56
quelle