android - 在 Android 5+ 上使用地理定位插件时速度为 “null”

标签 android cordova geolocation phonegap-plugins cordova-plugins

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

  • 核心:Cordova - 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 为 Android 5 实现解决方法(而不是为其他操作系统完美运行 watchPosition),这在很多时候会导致计算某些时间间隔的速度最高 400 公里/小时,同时计算总体速度或多或少准确。

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

我们希望按原样为所有平台使用同一个代码,并继续使用 watchPosition,因为它运行良好。

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

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

最佳答案

navigator.geolocation.getCurrentPosition() 仅在选项 enableHighAccuracy 设置为 true(默认)时检查 GPS。 您可以将 enableHighAccuracy 设置为 false

{enableHighAccuracy:false,maximumAge:Infinity, timeout:60000}

您可能需要以下权限

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />

希望对您有所帮助。

关于android - 在 Android 5+ 上使用地理定位插件时速度为 “null”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31704512/

相关文章:

android - 无法将 XStream 文件依赖项添加到 Android Studio 项目

android - Android中ID命名约定的最佳实践?

ios - Cordova 插件 CodePush - 重新启动 iOS 应用程序后更新丢失

手机重启后Android获取位置为空

geolocation - CodenameOne getCurrentLocation 方法之间有什么区别?

java - Jsoup 代码不工作

android - Android 库 JAR 可以依赖于 Android 库 AAR 吗?

JavaScript 登录功能无法使用 WebSQL

android - 某些设备 phonegap 媒体插件中的 Cordova 录音问题

web - 在 Web 浏览器中模拟 GPS 定位路线