首页 > 解决方案 > 地理位置不起作用 - 如何解决?

问题描述

请不要将其标记为重复问题,因为我所看到的各种情况和数十条建议在我的案例中都失败了。这是非常累人和令人沮丧的。

我有一个用 Ionic 制作的应用程序,需要使用地理定位。我遵循了 ionic 文档,它在浏览器中运行良好。但在Android上,不是!从我的角度来看,这很荒谬,因为这样的基本功能不适用于 Ionic 这样广泛的框架。撇开投诉不谈,这是我的代码:

  getLocation() {
    return new Promise((resolve, reject) => {
      var options = {
        enableHighAccuracy: true,
        maximumAge: 0
      };

      this.geolocation.getCurrentPosition(options).then((resp) => {
        resolve(resp.coords);
       }).catch(() => {
         resolve(undefined);
       });
    });
  }

问题是,当我在 Android 上安装应用程序时,上述例程没有返回,也没有在 CATCH 中返回,这与许多其他开发人员的抱怨完全相同。但是,正如我所提到的,各种技巧都不起作用。

有人可以帮我解决这个问题吗?或者甚至建议另一种方式?我已经尝试过导航器、纯 javascript 等。在所有这些中我都无法解决这个问题。

标签: androidgeolocationionic3

解决方案


尝试添加timeoutGeolocationOptions.

let options = { 
    enableHighAccuracy: true,
    timeout: 20000 
  };

推荐阅读