正如标题所说,无论位置是关闭还是成功回调总是被触发。有人有任何建议吗?
if (window.cordova) {
window.cordova.plugins.diagnostic.isLocationEnabled(locationEnabled,locationDisabled );
}
function locationEnabled() {.. }
function locationDisabled() {...}
我正在使用lolipop在三星galaxy s5上进行测试
答案 0 :(得分:1)
isLocationEnabled
无法正常运作。
您作为参数传递的第一个函数是"成功回调"。这并不意味着启用了位置,只是意味着插件已成功检索到位置状态。布尔值作为参数给出,这是您可以知道位置是否已启用的位置。
您传递的第二个功能是当插件无法获取位置状态时调用的功能。
因此,您需要使代码看起来像这样:
function locationEnabled() {
// Blabla
}
function locationDisabled() {
// Blabla
}
if (window.cordova) {
window.cordova.plugins.diagnostic.isLocationEnabled(function (locationEnabled) {
if (locationEnabled) {
locationEnabled();
} else {
locationDisabled();
}
}, function (error) {
console.log("The following error occurred: " + error);
});
}
查看plugin documentation了解详情。