Phonegap地理定位在Android上不起作用

Phonegap geoLocation not working on Android

本文关键字:Android 不起作用 定位 Phonegap      更新时间:2023-09-26

所以我正在尝试让地理定位在安卓上工作。我已经使用了下面的代码,我不得不说它在浏览器中运行得很好,但是当我在设备上运行它时它不起作用。这是我的代码:

索引.html

<p id="lat">Stad :</p>
<p id="lng">Straat :</p>
<script>
    window.onload = function(){
        document.addEventListener("deviceready", init, false);
    }
    function init(){
        navigator.geolocation.getCurrentPosition(positionSucces, positionError);
    }
    function positionSucces(position){
        var latitude = position.coords.latitude;
        var longitude = position.coords.longitude;
        document.getElementById("lat").innerHTML = latitude;
        document.getElementById("lng").innerHTML = longitude;
    }
    function positionError(error){
        alert(error.message);
    }
</script>

有人有关于如何使其适用于移动设备的提示吗?(当然是安卓)

您如何在安卓设备上进行测试?PhoneGap Desktop?或者您正在构建您的应用程序(Adobe PhoneGap Build),然后在设备上进行测试?

  1. 这就是您拥有的所有代码吗?我很惊讶它在浏览器上运行,因为设备就绪事件不会在浏览器上触发。你需要科尔多瓦来触发这个事件。
  2. (如果您在 PhoneGap 桌面上进行测试)确保您已在设备上打开您的位置,因为"如果关闭了地理位置服务,则会在超时间隔(如果指定)后调用 onError 回调。如果未指定超时参数(如您的情况),则不会调用回调。来源 - https://github.com/apache/cordova-plugin-geolocation
  3. (如果您使用的是PhoneGap构建)您说,您的配置中包含插件.xml。如果您使用的是Adobe PhoneGap构建...确保文件(config.xml)与索引.html位于同一层次结构(目录)中。默认情况下,PhoneGap 会创建 config.xml 一个位于 index.html 之上的目录。