Code Example‎ > ‎

GPS

从Eclipse的菜单里选择[New]-[Project],当弹出[New Project]对话框之后,选择"Droidget Wizard"-"project"

为了开发可以使用GPS的Widget,需要在Features里对GPS进行设置。请点击Feature右面的[Add]按钮。


从[Fearure]对话框中选择以下网址。
http://bondi.ompt.org/api/geolocation


点击[Finish]按钮,新建项目。
当弹出Feature对话框之后,在src/config.xml文件里增加代码<feature name="http://bondi.omtp.org/api/gelocation" />

src/config.xml
<?xml version="1.0" encoding="UTF-8"?>
<widget id="GPSSample_1279453579736" version="1.0" width="300" height="150">
    <content src="index.html" type="text/html"/>
    <name>GPSSample</name>
    <description>Sample Widget with GPS</description>
    <author url="http://www.gclue.jp">GClue</author>
    <icon src="icon.png"/>
    <license>(C) 2010 GClue KK</license>
    <feature name="http://bondi.omtp.org/api/geolocation" />
</widget>

新建JavaScript文件

新建一个名为js的文件夹,在里面新建一个名为script.js的文件。

js/script.js
function buttonHandler(){
    document.getElementById("divMsg").innerHTML = "Searching";  
    bondi.geolocation.getCurrentPosition(onPositionSuccess, onPositionError, {timeout:40000});
}

// this function will handle each position updates
function onPositionSuccess(position) {
    lat = position.coords.latitude;
    lon = position.coords.longitude;
    document.getElementById("divMsg").innerHTML = "lat:" + lat + "<br>" + "lon:" + lon;  
}

// this function will handle each error in position updates
function onPositionError(error) {
    document.getElementById("divMsg").innerHTML = "Error";
}

index.html文件的编辑

我们希望当点击按钮时,图片也随之变化。 

index.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta http-equiv="Content-Style-Type" content="text/css" />
    <meta http-equiv="Content-Script-Type" content="text/javascript" />
    <title>GPS Sample</title>
    <script type="text/javascript" src="js/script.js"></script>
</head>
<body>
    <div id="divMsg" style="color: yellow; height: 3.0em; font-size: 1em; "></div>
    <input type="button" id="formBtn" value="Get GPS" onclick="buttonHandler()"/>
</body>
</html>

Packaging

接下来将进行packaging。在Eclipse里,选择[Droidget]-[Packaging]
在binフォルダ里面生成了GPSSample.wgt。

通过USB传送到手机

通过USB接口,将开发用的电脑和手机进行连接,从Eclipse里选择[Droidget]-[Packaging Install]

通过网络传送到手机

为了将完成的FoursquareSample.wgt通过网络传送到手机里,我们需要新建一个下载用的文件download.html。

Download.html
<html>
<head>
    <title>Download</title>
</head>
<body>
    <a href="droidget://www.example.com/GPSSample.wgt">GPSSample</a><br>
</body>
</html>


运行结果




※ 本教程使用的图片资源是KDDI/au的IS01的待机画面。


Comments