Namespaces

Variants
Actions

Please note that as of October 24, 2014, the Nokia Developer Wiki will no longer be accepting user contributions, including new entries, edits and comments, as we begin transitioning to our new home, in the Windows Phone Development Wiki. We plan to move over the majority of the existing entries over the next few weeks. Thanks for all your past and future contributions.

Revision as of 19:17, 23 February 2013 by lpvalente (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Como criar auto-atualização para Widgets WRT

From Wiki
Jump to: navigation, search

Archived.pngAquivado: Este artigo foi arquivado, pois o conteúdo não é mais considerado relevante para se criar soluções comerciais atuais. Se você achar que este artigo ainda é importante, inclua o template {{ForArchiveReview|escreva a sua justificativa}}.

Acredita-se que este artigo ainda seja válido no contexto original (quando ele foi escrito)


Article Metadata

Compatibilidade
Plataforma(s): Web Runtime em S60 3ª Edição, Feature Pack 2

Artigo
Tradução:
Por maiconherverton
Última alteração feita por lpvalente em 23 Feb 2013

Contents

Teoria

Para Widgets S60 WRT a maneira mais fácil de fazer uma auto-atualização é ter pedir para fazer a verificação de versão, por si só. Uma variável no pacote do widget pode indicar qual versão atual pode ser verificada com a interface do servidor. Esta abordagem não requer nenhuma extensão ou plataforma, é a aplicação JavaScript pura.

Exemplo de configuração

Seguindo o exemplo pressuponha que você tenha em execução um script do lado do servidor no endereço http://myexample.versionservice.com:8888. O servidor responde ao pedido com a versão do documento XML, incluindo a tag da versão. Este exemplo pode ser facilmente estendido por exemplo, atualização para incluir URL em mensagem de resposta daversão.

Example code

/*
* versão url versão do servidor, e atual
*/
var versionURL = "http://myexample.versionservice.com:8888";
var currentVersion = 1;
 
var reqV = null;
 
/*
* chamado por exemplo, durante a inicialização do aplicativo ou uma vez por dia
*/
function checkForUpdate()
{
/*
* url asynch XHR para servidor
*/
reqV = new XMLHttpRequest();
reqV.onreadystatechange = checkVersion;
reqV.open("GET", versionURL, true);
reqV.send(null);
 
document.getElementById("updateDIV").innerHTML = "checking for updates";
}
 
/*
* resposta para analisar e verificar a versão
*/
function checkVersion()
{
if (reqV.readyState == 4)
{
if (reqV.status == 200)
{
/*
* sobrecarga, poderia usar também uma sequência de caracteres para informação da versão
*/
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" );
}
}
}

Exemplo do main em 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>
This page was last modified on 23 February 2013, at 19:17.
198 page views in the last 30 days.

Was this page helpful?

Your feedback about this content is important. Let us know what you think.

 

Thank you!

We appreciate your feedback.

×