【发布时间】:2013-01-03 10:20:55
【问题描述】:
我正在 phonegap 上设计一个移动应用程序。在这我试图获得用户的当前位置。但我没有在 Andriod Emulator 上获得地图。 我使用了这段代码:
<!DOCTYPE HTML>
<html>
<head>
<meta name="viewport" content="width=device-width; height=device-height; user-scalable=no" />
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
<title>PhoneGap Map</title>
<link rel="stylesheet" href="/master.css" type="text/css" media="screen" />
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
<script type="text/javascript">
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady() {
navigator.geolocation.getCurrentPosition(onSuccess, onError,{alert("error"),"enableHighAccuracy":true,"timeout":3000});
}
//GEOLOCATION
var onSuccess = function(position) {
alert("Latitude: " + position.coords.latitude + "\n" +
"Longitude:" + position.coords.longitude + "\n");
var myLat = position.coords.latitude;
var myLong = position.coords.longitude;
//MAP
var mapOptions = {
center: new google.maps.LatLng(myLat, myLong),
zoom: 14,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"),
mapOptions);
};
// onError Callback receives a PositionError object
//
function onError(error) {
alert("code: " + error.code + "\n" +
"message: " + error.message + "\n");
}
</script>
</head>
<body onload="onLoad()">
<div>map</div>
<div id="map_canvas" style="width:100px; height: 100px;" ></div>
</body>
</html>
我不知道我错在哪里。有人可以帮我解决这个问题吗?
【问题讨论】:
-
你的代码执行了吗?您是否收到任何警报,无论是成功还是错误?
-
没有大卫,我得到的只是空白页
-
尝试将
navigator.geolocation.getCurrentPosition(onSuccess, onError,{alert("error"),"enableHighAccuracy":true,"timeout":3000});放入onLoad函数中 -
Davids- 我试过了,但结果一样。我有一个疑问,当我在 PC 浏览器中运行时,我得到了 Geolocation。AVD 有什么问题>
-
您是否将 maps.googleapis.com 域列入白名单?
标签: android google-maps cordova jquery-mobile geolocation