我真的被困在这个问题上了。我正在构建一个ionic 2
应用。我使用cordova-plugin-geolocation
作为位置。这是我访问位置的功能,
getLocation(highAcc: boolean){
let options = { maximumAge: 30000, timeout: 50000, enableHighAccuracy: highAcc };
return Geolocation.getCurrentPosition(options).then((pos)=>{
this.long = pos.coords.longitude;
this.lat = pos.coords.latitude;
return pos;
}).catch( (err) => {
return Promise.reject({message: 'unable to access location'});
});
}
我尝试了高精度和低精度但两者都给出time out error
。它在浏览器中运行得非常好。但错误只发生在android中。它有时会在很长一段时间后起作用。但从来没有在第一次尝试。当我启动应用程序或位置访问方法时,它会在android上显示location
图标。但它几乎永远不会返回coordinates
。
我的应用基于手机位置。所以我不能解决这个问题。任何帮助将不胜感激。
这就是我在component
ionViewWillEnter(){
this.book.getFeedHunts().then((res)=>{
console.log(res);
this.hunts = res.json();
}).catch( (err) => {
this.handleError(err);
})
}
注意:我已经在stackoverflow
上尝试了几乎所有解决方案而没有任何帮助。
答案 0 :(得分:0)
确保您具有高准确度的权限,如果缺少,请在/android/app/src/main/AndroidManifest.xml中添加此行
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
答案 1 :(得分:0)