IBM Worklight - 如何使用 Google 地图 API

Posted

技术标签:

【中文标题】IBM Worklight - 如何使用 Google 地图 API【英文标题】:IBM Worklight - How to use Google Maps API 【发布时间】:2013-08-11 06:48:01 【问题描述】:

我的问题是:如何在 IBM Worklight 应用程序中使用地理位置(使用 Google Maps API)。

我很困惑如何让应用程序使用 GPS 自动检测我的位置? 还有如何让应用始终实时跟踪用户位置?

这是我的 JavaScript:

var x=document.getElementById("demo");

function getLocation()
  
  if (navigator.geolocation)
    
      alert("ya");
    navigator.geolocation.getCurrentPosition(showPosition);
    
  elsex.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>

【问题讨论】:

看看这个,它可能对你有帮助。 ***.com/questions/15326080/… 【参考方案1】:

我没有用过IBM Worklight,但我知道它是一个开发移动应用程序的工具。这里与地理位置无关。

它完全掌握在HTML5Google 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 地图 API 的 Geolocation documentation

既然您提到了 GPS,请仔细阅读下面突出显示的段落。

指定传感器参数

使用 Google Maps API 要求您指明您的 应用程序正在使用传感器(例如 GPS 定位器)来确定 用户的位置。这对于移动设备尤其重要。 应用程序必须将所需的传感器参数传递给标签 包含 Maps API javascript 代码时,指示是否 您的应用正在使用传感器设备。

通过传感器确定用户位置的应用程序必须通过 加载 Maps API JavaScript 时 sensor=true。

希望你能理解。

【讨论】:

您好,非常感谢您的回答 :) 我已经尝试过了,我已经创建了 apk 并在我的 android 设备上运行它,但我发现应用程序没有触发我的设备获取gps定位?我已经编辑了我的问题,也许你可以帮助我:) @asmartboy 你看过关于传感器参数的段落了吗?去 GPS 时检查一下。你也提到了Andriod,对吗? Google 为 Android 提供了自己的 API。检查这个developers.google.com/maps/documentation/android【参考方案2】:

如果您只是想在 Google 地图上显示信息,我相信您可以在 here 中找到您想要的内容,尤其是在“我的位置”图层部分。如果您想做更多的事情,那么您可以使用新的位置服务 API(IBM Worklight v6.0 中提供)来跟踪设备的位置,并根据需要使用其他 Google 地图功能来绘制标记或形状。请参阅 this 了解信息中心中位置服务的概述 - 还有一个入门模块。

【讨论】:

以上是关于IBM Worklight - 如何使用 Google 地图 API的主要内容,如果未能解决你的问题,请参考以下文章

IBM Worklight 6.0 - 如何将 Worklight 应用程序部署到 Worklight Server?

IBM Worklight - 如何实现 GPS 功能? [关闭]

IBM Worklight 6.1 - 如何打开 https 链接?

IBM Worklight - 如何使用 Google 地图 API

IBM Worklight 6.1 - 如何将应用程序连接到远程 Worklight 服务器?

IBM Worklight - 如何将 Worklight 代码导入 Eclipse?