Code Example‎ > ‎

GPS

Eclipseのメニューから[New]-[Project]を選択し、[New Project]ダイアログボックスで、"Droidget Wizards"-"project"を選択する。

GPSを使用したWidgetを開発するには、Featureで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を新規で作成します。

src/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ファイルの編集

Buttonがクリックされると、端末の現在位置が表示されるようにします。 

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>

パッケージング

次に、パッケージングをおこないます。Eclipseの[Droidget]-[Packaging]を選択します。

binフォルダ以下に、GPSSample.wgtが生成されます。

USB経由での転送

USBで開発機と実機を接続し、Eclipseの[Droidget]-[Packaging Install]を選択します

Web経由での転送

完成したImageSample.wgtをWeb経由で実機に転送するためには、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