cordovaGeolocation 错误:位置检索超时
Posted
技术标签:
【中文标题】cordovaGeolocation 错误:位置检索超时【英文标题】:cordovaGeolocation error: position retrieval timed out 【发布时间】:2015-05-18 13:12:34 【问题描述】:您好,我想在我的应用中实现一些地理定位功能。
所以我实现了一个像这样的 watchposition 函数:
.controller('NavigationCtrl', function ($scope,$cordovaGeolocation)
var watchOptions =
frequency : 1000,
timeout : 20*1000,
enableHighAccuracy: false // may cause errors if true
;
var watch = $cordovaGeolocation.watchPosition(watchOptions);
watch.then(
null,
function(err)
alert("WatchPosition failed: "+JSON.stringify(err));
,
function(position)
$scope.position = position;
);
)
在模板的第一次调用中,我得到了一个地理位置,但在 20 秒后我得到了一个错误:
code:3, message:'Position retrieval timed out'
我正在 iPhone 5s ios 8.3 上测试该应用程序。
我搜索了一下,发现 cordova 3.1 的地理位置存在一些错误,所以我选择使用 html api 进行地理位置,如下所示: https://developer.mozilla.org/en-US/docs/Web/API/Geolocation/Using_geolocation
但它没有在我的 ionic-framework 应用程序中显示任何内容。
我错过了什么?
我正在使用 cordova 4.3.0 和 ionic 1.3.19。
【问题讨论】:
请在此处查看我的回答:[***.com/questions/30301464/…Jesse [1]:***.com/questions/30301464/… 【参考方案1】:我发现我必须将代码放入$ionicPlatform.ready
函数中,以确保设备在开始地理定位之前准备就绪。现在它工作正常。
【讨论】:
以上是关于cordovaGeolocation 错误:位置检索超时的主要内容,如果未能解决你的问题,请参考以下文章
Cordova各个插件使用介绍系列—$cordovaGeolocation获取当前位置
未捕获的错误:[$injector:modulerr] 添加 $cordovaGeolocation 和 $ionicPopup 时无法实例化模块
$cordovaGeolocation.getCurrentPosition 上的“非法访问”
在 Ionic 中使用 navigator.geolocation 或 $cordovaGeolocation