1

我有以下html;

<div id="map_canvas"></div>

如果有一些js;

document.addEventListener("deviceready", onDeviceReady, true);

function onDeviceReady () {
    navigator.notification.alert("Yup, it works!",function(){},"","");
    navigator.geolocation.getCurrentPosition(getCurrentPositionSuccess, getCurrentPositionError);
};

function getCurrentPositionSuccess(position) {
alert(123);
    //alert(position.coords.latitude);
    currentPosition = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);

    gmap = new google.maps.Map(document.getElementById('map_canvas'), {
        zoom: 15,
        center: currentPosition,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    });
}

显然,以上所有内容都是一个片段,但所有关键角色都已到位。

所有这些在我的 PC 上和使用 Safari 时都非常有效。但是,当我转到 mac、xcode 和 phonegap 时,地图不再显示

alert(123) 永远不会发生并且该getCurrentPositionError函数被调用。

错误是code 2, kclerrordomain error 0

我收到了应用程序想要使用我的位置的警报。

这里的任何帮助都会很棒。

我在 Mavericks 上使用 xcode 5.0.1 和用于 iPad 的 phonegap 3.1。

编辑

如果我使用 Retina 模拟器,我可以找回位置,但如果我使用 ipad sim 则不能。为什么会这样?

4

0 回答 0