应用程序启动后打开时,Cordova地理位置失败

时间:2015-01-29 11:49:13

标签: html5 cordova geolocation

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

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

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

  1. 在关闭位置的情况下启动应用。显示警告
  2. 打开位置,然后重试找到
  3. 仍未检测到该位置
  4. 我有这个非常简单的测试用例:

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

    知道这里有什么问题吗?

1 个答案:

答案 0 :(得分:0)

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

  • 使用navigator.geolocation.watchPosition代替navigator.geolocation.getCurrentPosition;
  • 如果成功或出错,请致电clearWatch

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

但是,此解决方案无法在iOS上运行,因此您应插入平台检测。

有意义吗?