Conexão Sockets  XML
Índice dos Fóruns » Google Android e Java Micro Edition (ME)
Autor Mensagem
Sony_E
What is classpath?

Membro desde: 19/09/2008 09:41:02
Mensagens: 5
Offline

Desenvolvi uma aplicação em j2me que realiza uma conexão via socket com um servidor, para troca de dados. Como faço o contrario: um servidor envia dados para o celular via conexão socket TCP (neste caso, a aplicação será inicializada utilizando push registry, isto eu ja sei como faz)? O problema encontrado é na hora de especificar a URL do celular, que seria o IP do aparelho, para estabelecer a conexão. Devo enviar os dados para um servidor, um gateway da operadora para depois ela redirecionar para o celular do cliente?
npereirajr
JavaTeenager

Membro desde: 04/03/2008 15:21:35
Mensagens: 157
Localização: Rio de Janeiro
Offline

Você pode fazer da seguinte forma.

Sempre que sua aplicação iniciar, ela inicia uma conexão com o servidor, e mantém esta conexão ativa, mesmo sem receber dados, talvez dando um ping a cada 5 minutos. Se a conexão cair, a aplicação inicia outra no lugar da antiga.

Quando o servidor precisar notificar a aplicação de algo, ele simplesmente escreve na conexão que estará sempre aberta.

Nelson Pereira Junior

Desenvolvedor Web e Móvel

Blog sobre desenvolvimento de aplicações móveis, J2ME, BlackBerry, FlashLite, Android, e mais:
Blog: DevMobile.blog.br

Mobile Phone: +55 21 7623-0151

GTalk e MSN: npereirajr@gmail.com
[WWW] [MSN]
boone
JWizard
[Avatar]

Membro desde: 21/09/2003 16:01:35
Mensagens: 2140
Offline

Sony_E wrote:Desenvolvi uma aplicação em j2me que realiza uma conexão via socket com um servidor, para troca de dados. Como faço o contrario: um servidor envia dados para o celular via conexão socket TCP (neste caso, a aplicação será inicializada utilizando push registry, isto eu ja sei como faz)? O problema encontrado é na hora de especificar a URL do celular, que seria o IP do aparelho, para estabelecer a conexão. Devo enviar os dados para um servidor, um gateway da operadora para depois ela redirecionar para o celular do cliente?


Se a operadora te deu um IP (ou seja, se vc conseguiu isto dela melhor dizendo), basta o servidor iniciar a conexão com o celular.
Normalmente o celular não tem um IP único que pode ser verificado pelo servidor.Todas as requisições na nuvem caem sob um mesmo IP no servidor, por isto não tem como distinguir quem é quem.

Salvo esta situação de vc conseguir um IP, o que acho difícel, não tem jeito de iniciar no modelo servidor -> cliente, e daí a única saída é usar a dica do npereirajr mesmo.
Sony_E
What is classpath?

Membro desde: 19/09/2008 09:41:02
Mensagens: 5
Offline

Valeu galera
 
Índice dos Fóruns » Google Android e Java Micro Edition (ME)
Ir para:   
Powered by JForum 2.1.8 © JForum Team