即使Android 4.4.2中的位置服务已关闭,GetCurrentLocation仍在使用Cordova / PhoneGap App。
科尔多瓦版本是2.9
设备是Nexus4 V4.4.2
代码:
var onSuccess = function() {
alert("success")
}
var onError = function() {
alert("error")
}
var options = {
maximumAge: 0,
timeout: 60000,
enableHighAccuracy: true
};
navigator.geolocation.getCurrentPosition(onSuccess, onError, options);
代码在以前的Android版本中运行良好。 但是在Android 4.4.2中,即使关闭了位置服务,它也会提醒成功。
无法找到解决方案,我们将不胜感激。
答案 0 :(得分:1)
在Cordova V2.9中,有一个与此处提到的当前位置相关的错误:GetCurrentLocation is working on Cordova/PhoneGap App even when the Location services are turned off in Android 4.4.2
由于Cordova使用默认浏览器的Geolocation实现,因此这是一个WebView错误:https://issues.apache.org/jira/browse/CB-6548
作为一种变通方法,此插件使用Android API检查位置服务的状态。
插件:https://github.com/mandeeppasbola/Cordova-Plugins/tree/master/Location%20Service%20Status