【发布时间】:2016-09-05 00:45:02
【问题描述】:
Google 已弃用来自不安全来源的 getCurrentPosition() 和 watchPosition() 方法。当我使用 ionic 框架开发 android 应用程序时,我不能使用 HTTPS。所以我尝试使用 Cordova 地理定位插件,但它也无法正常工作。 Cordova插件的代码sn-p是
$scope.getLocation = function () {
alert('Get location Called')
var posOptions = {
timeout: 10000,
enableHighAccuracy: false
}
$cordovaGeolocation
.getCurrentPosition(posOptions)
.then(function (position) {
alert('getting current position')
var lat = position.coords.latitude
alert(lat)
var long = position.coords.longitude
alert(long)
}, function (err) {
console.log(err)
alert(err.message)
})
}
<button class="button button-full button-assertive" ng-click="getLocation()">
Get Location
</button>
它在 console.log(err) 中给我一个错误
PositionError {message: "Timeout expired", code: 3, PERMISSION_DENIED: 1, POSITION_UNAVAILABLE: 2, TIMEOUT: 3}
我只想获取用户的当前位置。有没有其他方法可以获取当前的经纬度?
【问题讨论】:
-
尝试删除插件,然后再次安装。
-
@Vaibhav 如果您在设备上进行测试,您可以重新启动设备一次吗?另请转到设置 -> 位置和安全 -> 使用网络;并激活它
-
@Atula 我尝试删除插件并重新安装,但它不起作用
-
您尝试过@Gandhi 的建议吗?也看到这个stackoverflow.com/questions/20239846/…
-
@Atula 我尝试了 Gandhi 的建议,现在它正在发挥作用。非常感谢您的帮助。
标签: cordova google-maps ionic-framework geolocation