【问题标题】:Cordova geolocation fails when turned on after the app was started应用程序启动后打开 Cordova 地理定位失败
【发布时间】:2015-01-29 11:49:12
【问题描述】:

我在 Cordova 应用程序(在 Android 上;在 iOS 上工作得很好)上有这个东西,这意味着一些位置问题。让我解释一下:

由于应用程序需要在启动时检查位置,因此我会显示一条带有重试按钮的警告消息。

所以我有这个非常简单的场景:

  1. 在关闭位置的情况下启动应用程序。显示警告
  2. 开启定位,然后重试定位
  3. 仍未检测到该位置

我有一个非常简单的测试用例:

navigator.geolocation.getCurrentPosition(
  function(e){ console.log(e) },
  function(e){ console.log(e) },
  {
    enableHighAccuracy : true
  }
);

知道这里出了什么问题吗?

【问题讨论】:

    标签: html cordova geolocation


    【解决方案1】:

    我也有同样的问题,不知道为什么会这样,但我是这样解决的:

    • 使用navigator.geolocation.watchPosition 而不是navigator.geolocation.getCurrentPosition ;
    • 无论成功或错误,请致电clearWatch

    即使第一次没有打开 GPS/位置,随后对 navigator.geolocation.watchPosition 的调用也应该成功。

    但此解决方案不适用于 iOS,因此您应该插入平台检测。

    有意义吗?

    【讨论】:

      猜你喜欢
      • 2015-11-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-05
      • 1970-01-01
      • 1970-01-01
      • 2018-10-29
      • 1970-01-01
      相关资源
      最近更新 更多