×
Namespaces

Variants
Actions

Archived:Acessando os recursos do sistema com PySymbian em dispositivos S60 3rd Edition

From Nokia Developer 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

Artigo
Tradução:
Por FINALX
Última alteração feita por hamishwillee em 03 Jun 2013

Introdução

Um problema comum no desenvolvimento de aplicativos no Flash Lite ou WRT é a falta de acesso a recursos S60. Estas línguagens não têm acesso a GPS, Bluetooth, Contatos, SMS, etc no S60 3rd Edition. Neste artigo vamos mostrar um aplicativo Flash Lite que pode acessar os recursos da S60 3rd Edition interna usando PySymbian.

Solução

Isso foi feito utilizando a arquitetura e implementação mostrado em How to access S60 resources in WRT or Flash Lite, using PyS60.

Como foi mostrado no post, um aplicativo cliente tem acesso a recursos internos S60 pensamento pedidos HTTP. No ActionScript 2.0 (que é usado em Flash Lite 2.x e 3.x) um pedido HTTP pode ser executada usando a classe LoadVars. O uso básico dessa classe é mostrada abaixo:

var lv:LoadVars = new LoadVars();
lv.onLoad = function(success:Boolean){
//Ações quando os dados são carregados.
}
lv.sendAndLoad("http://exemplo.com",lv,"GET");

Os parâmetros do método sendAndLoad são:

  • "http://examplo.com" - A url a partir do qual irá carregar os dados
  • lv - Objeto com os dados para enviar a URL
  • "GET" - O método para enviar os dados, pode ser "GET ou " POST "

Nós vamos usar essa classe para acessar os recursos da S60 interno, utilizando o código mostrado neste artigo post

Exemplo do código

No código abaixo, mostramos como acessar a posição GPS utilizando esta solução.

//Fullscreen
fscommand2("FullScreen",true);
 
//Criar a variável load vars
var lv:LoadVars = new LoadVars();
// Cria um objeto MovieClipLoader para carregar o mapa estático do Google
var loader:MovieClipLoader = new MovieClipLoader();
//Gerar uma API_KEY e definir aqui.
var apiKey = 'ABQIAAAAJq0bIh_b5seBuaS5dG3MyBTgIMgsbASCAp5eBSzKUN4OpxTWjxQe25ul58fmeLTrIy1RiBxMJ2gJ5w';
//Quando a posição GPS é recuperado. O seguinte método é chamado.
lv.onLoad = function(success:Boolean){
if(success){
//Definir os componentes de interface do usuário com os dados recuperados
//Os dados recuperados quando você está acessando o serviço "get_position" são as "latitude" e "longitude" do dispositivo.
latitude_txt.text = lv["latitude"].substring(0,8);
longitude_txt.text = lv["longitude"].substring(0,8);
var url:String = 'http://maps.google.com/staticmap?center='+trim(lv["latitude"].substring(0,8))+','+trim(lv["longitude"].substring(0,8))+'&zoom=10&size=220x200&maptype=mobile&key='+apiKey;
//Carregar um mapa com a sua posição no centro
loader.loadClip(url,map_mc);
}else{
trace("Error");
}
}
//Comece o trabalho quando pressionar o botão "LOAD MAP".
loadMap_btn.onPress = function(){
//A url dada no método sendAndLoad tem acesso ao dispositivo local (127.0.0.1, para a porta 5004 (Esta é a porta padrão do ServerPython) e o serviço "get_position (Recupera a posição GPS do módulo padrão)
lv.sendAndLoad("http://127.0.0.1:5004/get_position",lv,"GET");
}

Lembre-se de que você tem que iniciar a aplicação "spython" antes de acessar os recursos do Flash Lite S60.

This page was last modified on 3 June 2013, at 02:19.
63 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.

×