Ele começa a trazer os dados corretamente, mas a tela fica travada no meu com a opção okCommand…
Deu pra entender?
Obrigado.
j0nny
Cara, eu posso estar sendo xato, mas ponha seu código entre as tags.
public void escreveCerto() {
System.out.println("Tags");
}
Tente fazer assim, em vez de Con.Run(), tente Con.start();
L
lzoratto
Está implementando Runnable, não tem start(), certo?
j0nny
Então faça o seguinte
L
lzoratto
Excelente… Resolveu.
j0nny
:thumbup:
L
lzoratto
j0nny, meu aplicativo funciona normal agora no emulador.
Quando coloco pra rodar no Samsung Omnia II com Windows Mobile 6.5 a aplicação abre normal mas na hora que dou o comando de conexão, é perguntado sobre deixar ou não utilzar a rede… rede de baixo nível etc… digo que sim pra tudo, mas não conecta… sabe o que pode ser? Diz também que uma informação strID não foi encontrada…
Obrigado!
j0nny
lzoratto:
j0nny, meu aplicativo funciona normal agora no emulador.
Quando coloco pra rodar no Samsung Omnia II com Windows Mobile 6.5 a aplicação abre normal mas na hora que dou o comando de conexão, é perguntado sobre deixar ou não utilzar a rede… rede de baixo nível etc… digo que sim pra tudo, mas não conecta… sabe o que pode ser? Diz também que uma informação strID não foi encontrada…
Obrigado!
Cara, posta a parte do código onde vc faz a conexão pra gnt ver…
L
lzoratto
publicvoidrun(){try{// Conecto com o servidor...client=(SocketConnection)Connector.open("socket://");}catch(IOExceptionex){ex.printStackTrace();}try{is=client.openInputStream();os=client.openOutputStream();// envio alguns dados...os.write(.getBytes());}catch(IOExceptionex){ex.printStackTrace();}try{intch;sb=newStringBuffer();while((ch=is.read())!=-1){sb.append((char)ch);// Fico lendo o que tá chegando.......}}catch(IOExceptionex){ex.printStackTrace();}Sóisso....funcionanormalnoemaulador....Desculpepelocódigocomosecolocadaformaquevocêpediu?
Cara, não é eu q pesso, são regras do fórum :thumbup:
Qual operadora vc usa? Tem plano de dados?
L
lzoratto
Estou usando rede wi-fi…
j0nny
Tem algum firewall intermediando?
L
lzoratto
Nenhum firewall…
j0nny
Ja verificou também se seu aparelho implementa Socket?
Pq vi alguns aqui no fórum falarem que em determinados aparelhos, o socket n funciona mesmo, só HttpConnection.
L
lzoratto
O celular é o Samsung Omnia II com Windows Mobile 6.5, você conhece? Vou pesquisar sobre ele aceitar ou não conexões socket. Obrigado.
L
lzoratto
Será que o fato de meu Midlet não ser assinado, está interrompendo essa conexão socket por não ter permissão?
j0nny
Não, pois a sua aplicação deve perguntar se vc tem cereteza que quer conectar, certo?
L
lzoratto
Exato ela pergunta se quero continuar…
L
lzoratto
Mas como tem serviço de RSSFeed, deve implementar socket certo?
j0nny
Então essa hipótese pode ser descartada…
P
PoneyMan
Correto, isto é um dos motivos, aliado posteriormente também a falta de configuração da aplicação para não mais perguntar.
Veja, para a pergunta sumir, além da aplicação ser assinada, ela tb deve ser configurada para não mais perguntar. Isto se faz no aparelho.
P
PoneyMan
Vamos separar as coisas:
Uma coisa é o vc ter uma aplicação nativa de RSS que usa socket.
Outra coisa é esta funcionalidade ter sido exposta a implementação Java do aparelho. Como socket tem que existir em qualquer aparelho MIDP 2.0 (no 1.0 era opcional), então teoricamente você tem socket sim disponível e que pode ser usado normalmente.
L
lzoratto
Tem como assinar o Midlet para fazer um teste? Digo se tem como fazer sem custos como já fiz para um applet…
P
PoneyMan
Negativo.
Quer assinar, tem que pagar.
L
lzoratto
Então não tem como eu testar a conexão socket no meu celular, somente no emulador…?
P
PoneyMan
Lógico que tem, basta você responder a pergunta que aparece na tela e a aplicação naturalmente vai se conectar.
Cansei de fazer isto na minha vida de J2ME…
L
lzoratto
Então ai é que está o problema! Eu aceito a pergunta porém não conecta… só no emulador…
P
PoneyMan
Tem certeza mesmo que está fazendo conforme a cartilha:
A conexão é realizada dentro de uma thread
Vc está capturando qualquer exceção e lançando na tela
Seu celular está com a APN configurada corretamente
Isto é o básico para funcionar.
L
lzoratto
Sim só esta APN que não sei como se configura pode me explicar?
P
PoneyMan
Não posso. Depende do fabricante e as vezes no mesmo fabricante fica em lugares diferentes.
Recomendo exercitar mais seu dom de fuçador para passar a conhecer melhor o seu aparelho.
O ideal era vc encontrar o local onde está armazenado isto, jogar fora o que está lá, e ligar na operadora pedindo para enviarem novamente as configurações de acesso a internet por SMS.
L
lzoratto
Descubri que o problema não está não conexão. Ela acontece com sucesso.
Acontece o seguinte:
InputStreamis=null;SocketConnectionclient=null;try{client=(SocketConnection)Connector.open("socket://"); } catch (IOException ex) { ex.printStackTrace(); }Até aqui normal no emulador e no celular...instancio: try { is = client.openInputStream(); } catch (IOException ex) { Error = "(is)"+ex.getMessage();ex.printStackTrace();}
Aí está o problema… no emulador funcionar, mas no celular da erro neste trecho e não consigo pegar a mensagem…
P
PoneyMan
Tenho quase a absoluta certeza d q vc não está jogando esta exception na tela.
Neste primeiro programa a variável Exception já vai pra tela com o valor “conectando…” pinto na tela o novo valor dela depois da conexão com sucesso…: “Conectou!”
Neste segundo programa a variável Exception já vai pra tela com o valor “conectando…” adicionei este segundo bloco e ai a coisa já não vai.
pinto na tela a variável mas ela está com valor inicial “Conectando…”
Por isso sei que o erro está sendo gerado neste bloco mas não estou conseguindo ver a causa…
Lmebrando que no emulador funciona normalmente… estes testes foram feitos no celular que é onde ocorre o problema…
P
PoneyMan
2 coisas:
Pelo amor d D…adicione as tags para postar código formatado
Posta o código completo para vermos onde vc tá fazendo caquinha
L
lzoratto
Então se puder me explicar como postar o código desta forma…
Obrigado.
j0nny
lzoratto:
Então se puder me explicar como postar o código desta forma…
Obrigado.
Caracas meu… já foi explicado no início do tópico.
Use as tags code
L
lzoratto
Pois é tive que perguntar a outra pessoa para entender que se tratava de (code) e no fim (/code). Desculpe mas pelas explicações anteriores não tinha ficado claro para mim.
L
lzoratto
Consegui pegar a descrição do erro
Acontece na conexão com o servidor: javax.microedition.io.ConnectionNotFoundException:socket open: failed
Porém isso só acontece no celular. No emulador se conecta normalmente…
godinez
o servidor que vc conecta, é algum tipo de servidor interno ? que fica na empresa, ou na sua casa, sei lá!! Porque o emulador pode conseguir a conexao por estar na mesma rede, e se o servidor não estiver recebendo conexoes externas, isso nunca vai funcionar msm.
Faça uma conexão simples via HttpConnection, um ping pong basico rsrsrs, para verificar se é algum problema(limitação) do aparelho, servidor, etc…
L
lzoratto
Então o servidor fica na empresa, mas é um serviço que atende clientes externos. De casa também consigo conectar pelo emulador…
Obrigado!
P
PoneyMan
lzoratto:
Consegui pegar a descrição do erro
Acontece na conexão com o servidor: javax.microedition.io.ConnectionNotFoundException:socket open: failed
Porém isso só acontece no celular. No emulador se conecta normalmente…
Ok mas o fato de eu navegar pela internet e utilizar o msn tudo por este celular, não quer dizer que isso que falou para eu fazer esteja descartado certo? Tentar configurar a APN…
P
PoneyMan
Se vc está conseguindo navegar então o problema não é APN.
Lembrei que vc pode receber esta exception se por exemplo o celular estiver sem sinal da operadora.
L
lzoratto
Acredito que também não seja esse o problema. Sempre que tento a conexão estou em uma rede privata com acesso wi fi…
Mesmo assim sempre com bom sinal da operadora… A rede que tento fazer a conexão é a mesma que utilizo para conectar pelo emulador. Obrigado.
P
PoneyMan
Desliga este wi-fi, meta a mão no bolso e garanta que está usando a rede da operadora para testar !
Tem que fazer teste né fio…se vc não fala nada estou entendendo que ainda não fez isto…
L
lzoratto
Vou fazer isso. Mas porque não funcionaria por wi fi e funcionaria pela operadora?
L
lzoratto
Testei pela rede da operadora também deu a mesma exception…
P
PoneyMan
Aquela URL q vc usou no código deste post , é fictícia né…?!!
Tem certeza que ela não é daquele jeito no seu código real…???
L
lzoratto
Sim ela não é real. No emulador a conexão é perfeita, recebo os dados da url normalmente…