Android 5+上的地理定位插件的速度为"null"

and*_*kov 8 android geolocation phonegap-plugins cordova cordova-plugins

speed价值始终null在Android 5+中.我们使用这些:

  • 核心:科尔多瓦 - 5.1.1
  • 平台:Cordova-Android 4.0.2
  • 插件版本:1.0.1
  • 设备:三星Galaxy S4(A5.0.1),Nexus 5(A5.1.1),LG G3 Stylus D690(A5.0.2).

我们在更新到Android 5+之后立即遇到此问题.

虽然在Android 4和iOS上仍然可以正常工作.我们试用getCurrentPositionwatchPosition-没有运气.HighAccuracytrue.

我们必须使用getCurrentPosition(而不是完全watchPosition适用于其他操作系统)来实现Android 5的解决方法,这在很多时候导致计算速度高达400 km/h的某些时间间隔,同时计算总体上或多或少的准确速度.

  • 我们缺少Android 5的任何权限吗?
  • 我们可以做些什么来解决这个问题?

我们希望为所有平台使用一个代码,并保持使用,watchPosition因为它运行良好.

  • 有什么建议?这是一个已知的问题?

相关说明:Cordova与Galaxy设备一般存在任何已知的错误/问题吗?谢谢!

jce*_*ile 1

Cordova 不提供任何用于地理定位的本机代码,它只是添加激活 webview 地理定位的权限,因此如果某些功能不起作用,则问题出在 chromium 实现上。

您可以尝试使用 crosswalk 插件来查看地理定位是否在那里工作得更好(它向您的项目添加了更新的 chromium webview),或者使用该插件的 0.3.6 版本,因为这是带有本机代码的最新版本。

编辑:将参数从 cordova 传递到 webview 地理位置时出现错误,这可能会导致您的问题,请尝试使用最新版本的插件

cordova plugin add https://github.com/apache/cordova-plugin-geolocation
Run Code Online (Sandbox Code Playgroud)