【发布时间】:2015-11-02 04:35:48
【问题描述】:
我正在开发一个应用程序,其中 70% 是基于地理位置的。我开始在 iOS 上开发,一切都很好,我遇到了一些问题,但没有什么是无法从逻辑上解决的。现在,我被问到一个 Android 版本,第一印象,一切都与 iOS 相同,但是当给我带来问题的测试版本出现地理定位时。问题是,从手机上关闭 GPS(我测试了三星、Xperia、摩托罗拉)会落入错误功能(我定义的),以提醒用户 GPS 已关闭并且应该能够占用。但是,激活它,它不能正常工作,最近重新启动计算机才能正常工作,我疯了,因为即使我得到错误响应,或者提醒你离开,或者类似的东西。
我的代码:
$scope.$on('$ionicView.enter', function(){
$(function(){
document.addEventListener("deviceready", onDeviceReady, false);
})
function onDeviceReady() {
navigator.geolocation.getCurrentPosition(onSuccess, onError);
}
function onSuccess(pos) {
$scope.latitud = pos.coords.latitude
$scope.longitud = pos.coords.longitude;
console.log(pos.coords.latitude);
$scope.mostrar_cercanos = true;
$scope.getViews();
}
function onError(error) {
$scope.mostrar_cercanos = false;
$scope.mostrar_mensaje_gps = true;
$scope.mensaje = "El GPS de su telefono no se encuentra activado";
}
})
插件:
org.apache.cordova.geolocation 0.3.12 "Geolocation"
org.apache.cordova.inappbrowser 0.6.0 "InAppBrowser"
org.apache.cordova.network-information 0.2.15 "Network Information"
org.apache.cordova.splashscreen 1.0.0 "Splashscreen"
我必须回到 iOS 提到一切都按我的意愿运行。
【问题讨论】:
-
最后一部分我不清楚“但是,激活它,它不能正常工作,最近重新启动计算机才能正常工作,我疯了,因为即使我得到一个错误响应,或提醒您离开,或类似的东西。”
-
顺便说一句,用于 android 的 cordova 地理定位插件使用 HTML5 地理定位,因此不涉及本机代码,所以这一切都取决于 webview
-
@jcesarmobile 我的意思是激活的 GPS Android 设备并且无法进行地理定位,使其工作的唯一方法是启用 GPS,再次打开设备并在那里再次工作。
标签: android ios cordova gps ionic-framework