This page was last modified 07:55, 6 June 2008.
Web Runtime Widgetsで自己更新機構を作る方法
From Forum Nokia Wiki
原文(英語): How-to create self-updating WRT widgets
対象となるバージョン: Web Runtime in S60 3rd Edition, Feature Pack 2
Contents |
解説
S60 Web Runtime Widgets で更新操作を行う最も簡単な方法は、アプリケーションによりバージョンをチェックすることです。Widgetバンドル中の変数が現在のバージョンを示すため、サーバ側との比較により、それを確認することができます。この方法はPure JavaScript実装を使うので、プログラムの拡張やプラットフォームに依存した手法を必要としません。
コード例の設定について
以下の例では、サーバーのURLを http://myexample.versionservice.com:8888 と想定しています。サーバーは、versionタグつきXMLドキュメントを含んだバージョン情報のリクエストに対し、バージョン情報を返します。この例は、容易に拡張することができます。例.バージョン情報のレスポンスに、更新URLを含めること
コード例
/*
* version server url, and current version
*/
var versionURL = "http://myexample.versionservice.com:8888";
var currentVersion = 1;
var reqVersion = null;
/*
* called e.g. during app startup or once a day
*/
function checkForUpdate()
{
/*
* asynch XHR to server url
*/
reqV = new XMLHttpRequest();
reqV.onreadystatechange = checkVersion;
reqV.open("GET", versionURL, true);
reqV.send(null);
document.getElementById("updateDIV").innerHTML = "checking for updates";
}
/*
* parse response and check version
*/
function checkVersion()
{
if (reqV.readyState == 4)
{
if (reqV.status == 200)
{
/*
* little overhead here, one could use also string for version info
*/
var newVersion = reqV.responseText;
if (currentVersion != newVersion)
{
document.getElementById("updateDIV").innerHTML =
"<a href=\"http://www.taika.org/~jario/newversion.wgz\">
Download new version</a>";
}
else
{
document.getElementById("updateDIV").innerHTML =
"No new versions available";
}
}
else
{
alert( "connection error" );
}
}
}
メインHTMLの例
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<script type='text/javascript' src="selfupdate.js"></script>
</head>
<body onload="checkForUpdate();">
<div id="updateDIV"></div>
</body>
</html>
| Related Discussions | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Printing (via IR) web pages from the Opera Web Browser on a Nokia 9210 | wandeep | General Symbian C++ | 0 | 1970-01-01 02:00 |
| Printing (via IR) web pages from the Opera Web Browser on a Nokia 9210 | wandeep | Symbian Tools & SDKs | 0 | 1970-01-01 02:00 |
| runtime error in s60 sdk, 2nd edition, fp3 | cstommijx | Mobile Java Tools & SDKs | 4 | 2006-10-27 04:00 |
| WRT with Paypal | hp3 | WRT Widget Development | 3 | 2008-04-25 15:06 |
| How to Break line at runtime int Text Editor? | omerkarim | Symbian User Interface | 4 | 2007-11-14 12:19 |
