gpt4 book ai didi

ios - 钛/Appcelerator/合金 : Unable to get current location despite success returning true

转载 作者:行者123 更新时间:2023-11-29 00:25:45 26 4
gpt4 key购买 nike

我正在使用 iPhone 4s 模拟器运行以下代码:

Ti.Geolocation.getCurrentPosition(function(e){
Ti.API.log(JSON.stringify(e));
});

上述输出的格式化版本提供以下信息:

{
"code": 0,
"type":"location",
"error":"The operation couldn’t be completed. (kCLErrorDomain error 0.)",
"source":{},
"success":true
}

似乎有相当矛盾的信息。它表示 successtrue,但给出了错误消息。

此外,根据 Location Results Docs ,它表示如果 success 为 true,则应返回一个 coords 字段。然而上面没有coords

另请注意以下两个返回true,因此这不是权限问题:

Ti.Geolocation.locationServicesEnabled;Ti.Geolocation.hasLocationPermissions(Ti.Geolocation.AUTHORIZATION_ALWAYS);

最佳答案

有两件事需要注意:

  1. locationServicesEnabled property for device

  2. hasLocationPermissions method

首先,您需要检查第一个属性以确保设备位置已打开。

然后您将检查hasLocationPermissions,因为即使设备位置未打开,这也可能是正确的,我认为这就是您的情况。

示例代码:

var authType = Ti.Geolocation. AUTHORIZATION_ALWAYS;

if (Ti.Geolocation.locationServicesEnabled) {
if (Ti.Geolocation.hasLocationPermissions(authType)) {
// voila...
} else {
Ti.Geolocation.requestLocationPermissions(authType, function (e) {
if (e.success) {
alert('voila...');
}
});
}

} else {
alert('Please turn on your device's location');
}

关于ios - 钛/Appcelerator/合金 : Unable to get current location despite success returning true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43081057/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com