android - 地理位置不起作用 - 如何解决?
问题描述
请不要将其标记为重复问题,因为我所看到的各种情况和数十条建议在我的案例中都失败了。这是非常累人和令人沮丧的。
我有一个用 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 等。在所有这些中我都无法解决这个问题。
解决方案
尝试添加timeout
到GeolocationOptions
.
let options = {
enableHighAccuracy: true,
timeout: 20000
};
推荐阅读
- git - ssh 代理 plink 无法弹出 yubikey 输入表单
- reactjs - React Hook Form:当我渲染一个 TextField (materialUI) 并提供 Field: {onChange} 它说 onChange undefined
- sql - 2个表中的SQL多对多关系
- r - 按 DF 中的某个变量分组
- swift - 使用 AVFoundation 快速多摄像头预览
- javascript - react js中通过api解释所见即所得的文本
- drupal - 作曲家搜索未找到托管在 drupal 作曲家存储库中的包
- c# - 使用 AutoFixture 中的 AutoMock 对构造函数中的响应式代码进行单元测试?
- android - Gradle 在构建颤振项目时失败
- reactjs - TypeError:无法读取未定义的属性“用户”| 但用户已定义