我有以下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 则不能。为什么会这样?