我的问题是:如何在IBM Worklight应用程序中使用地理定位(使用Google Maps API)。
我很困惑如何让应用程序使用GPS自动检测我的位置? 另外如何使应用程序始终实时跟踪用户位置?
这是我的JavaScript:
var x=document.getElementById("demo");
function getLocation()
{
if (navigator.geolocation)
{
alert("ya");
navigator.geolocation.getCurrentPosition(showPosition);
}
else{x.innerHTML="Geolocation is not supported by this browser.";}
}
function showPosition(position)
{
x.innerHTML="Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
HTML:
<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<title>HTMLGeoLocation</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0">
<link rel="shortcut icon" href="images/favicon.png">
<link rel="apple-touch-icon" href="images/apple-touch-icon.png">
<link rel="stylesheet" href="css/HTMLGeoLocation.css">
<script>window.$ = window.jQuery = WLJQ;</script>
</head>
<body id="content" style="display: none;">
<!--application UI goes here-->
<p id="demo">Click the button to get your coordinates:</p>
<button onclick="getLocation()">Try It</button>
<script src="js/initOptions.js"></script>
<script src="js/HTMLGeoLocation.js"></script>
<script src="js/messages.js"></script>
</body>
</html>
答案 0 :(得分:0)
我没有使用IBM Worklight
,但我知道它是开发移动应用程序的工具。这里与地理位置无关。
纯粹掌握在HTML5
和Google maps API
手中。
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
希望您知道Javascript
,上述脚本是Google Maps Javascript API。
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(position); // this will return lat/lng of
} // current location
else {
//Handle if GeoLocation fails
}
只有在用户允许的情况下,您才能获得当前位置。你不能强迫获得地理位置。
浏览Google maps API的 Geolocation documentation 。
由于您提到了 GPS ,请仔细阅读以下突出显示的段落。
指定传感器参数
使用Google Maps API需要您指明是否 应用程序正在使用传感器(如GPS定位器)来确定 用户的位置。这对于移动设备来说非常重要。 应用程序必须将所需的传感器参数传递给标记 当包含Maps API javascript代码时,指示是否 您的应用程序正在使用传感器设备。
通过传感器确定用户位置的应用程序必须通过 加载Maps API JavaScript时,sensor = true。
希望你明白。
答案 1 :(得分:0)