Galera,
estou tentando desenvolver um aplicativo que leia o tipo do teclado do celular. Se ele é normal ou Qwerty.
Porém estou meio perdido e nao sei por onde começar. Alguem tem uma dica?
Vlw
Galera,
estou tentando desenvolver um aplicativo que leia o tipo do teclado do celular. Se ele é normal ou Qwerty.
Porém estou meio perdido e nao sei por onde começar. Alguem tem uma dica?
Vlw
Eu tenho !
Faça uma pesquisa no mercado e veja quais os modelos que tem um ou outro.
Na sua aplicação vai ter esta base e em run-time vc consulta o modelo do celular para ver se ele está nesta lista.
Se estiver, vc faz o tratamento específico que quer para este caso.
Simples, não ?!!!
Sim, seria uma solução bem simples. Porém, imagina a manutenção que eu teria que fazer para manter essa base de dados atualizada.
Sempre que algum fabricante fosse lançar um modelo novo, eu teria que atualizar minha base de dados. Seria muito trabalho.
Eu andei pesquisando e ainda não encontrei uma solução para que, em run-time, ele faça um get para verificar o tipo de teclado.
Pois eu ja criei uma classe que captura as teclas do celular, independente de fabricante e modelo. Mas fiz para o teclado normal.
O problema é: Como testar se o teclado é normal ou Qwerty?
[quote=boone]Eu tenho !
Faça uma pesquisa no mercado e veja quais os modelos que tem um ou outro.
Na sua aplicação vai ter esta base e em run-time vc consulta o modelo do celular para ver se ele está nesta lista.
Se estiver, vc faz o tratamento específico que quer para este caso.
Simples, não ?!!![/quote]
Não há como testar…por isto a sugestão.
Não há algo via J2ME que alcance o harware e te dê o que vc quer.
Nossa… a cada dia que passa to gostando + de aprender j2ME. huahuahuahua
Vou procurar uma solução. Se der certo, posto aqui.
[quote=boone]Não há como testar…por isto a sugestão.
Não há algo via J2ME que alcance o harware e te dê o que vc quer.[/quote]
Vai em frente então. Quando bater a cabeça e estiver cansado de doer, pode me dar razão então.
Nos vemos em 2012.
[quote=boone]Eu tenho !
Faça uma pesquisa no mercado e veja quais os modelos que tem um ou outro.
Na sua aplicação vai ter esta base e em run-time vc consulta o modelo do celular para ver se ele está nesta lista.
Se estiver, vc faz o tratamento específico que quer para este caso.
Simples, não ?!!![/quote]
Boone, como sugere fazer essa pesquisa em run-time? Ou seja, como eu reconheceria o teclado em run-time?
Vc não entendeu a resposta que eu dei a ele ?
http://www.guj.com.br/posts/list/225380.java#1155062
Tentei mostrar que não há saída, mas ele não entendeu e ainda não “caiu a ficha”:
http://www.guj.com.br/posts/list/225380.java#1155372
A única sugestão que acho viável eu já dei:
http://www.guj.com.br/posts/list/225380.java#1154850
A sugestão não é a melhor, mas já que se faz questão de determinar a @#!&$ do teclado, então pelo menos ela vai nesta direção (com um custo claro, pq tudo tem custo !).
Desculpe boone, mas vc esta enganado… Já sei como detectar o tipo de teclado. Basta apenas fazer uma chamada de keyCode e fazer uma verificação. Dependendo da primeira keyCode a ser retornada, eu trato como Teclado Normal ou Qwerty.
Ainda bem que consegui a solução para meus problemas antes de 2012, ne? huahuahuhua
[quote=boone]Vc não entendeu a resposta que eu dei a ele ?
http://www.guj.com.br/posts/list/225380.java#1155062
Tentei mostrar que não há saída, mas ele não entendeu e ainda não “caiu a ficha”:
http://www.guj.com.br/posts/list/225380.java#1155372
A única sugestão que acho viável eu já dei:
http://www.guj.com.br/posts/list/225380.java#1154850
A sugestão não é a melhor, mas já que se faz questão de determinar a @#!&$ do teclado, então pelo menos ela vai nesta direção (com um custo claro, pq tudo tem custo !).
[/quote]
Ontem mesmo estava comentando com um colega de como a falta de testes leva a conclusões precipitadas.
Veremos quem ri por último.
Para fechar o tópico, aqui esta a solução:
if((MyCanvas.getGameAction(48) == 0) && (MyCanvas.getGameAction(49) == 0) && (MyCanvas.getGameAction(50) == 0) && (MyCanvas.getGameAction(51) == 0) && (MyCanvas.getGameAction(52) == 0) && (MyCanvas.getGameAction(53) == 0) && (MyCanvas.getGameAction(54) == 0) && (MyCanvas.getGameAction(55) == 0) && (MyCanvas.getGameAction(56) == 0) && (MyCanvas.getGameAction(57) == 0)){
//QWERTY Keypad;
}
else{
//Numeric Keypad;
}
Testei em 6 aparelhos de diferentes marcas e modelos e está detectando: Teclado Qwerty ou Normal.
[quote=boone]Ontem mesmo estava comentando com um colega de como a falta de testes leva a conclusões precipitadas.
Veremos quem ri por último.[/quote]
[quote=paulohnt]Para fechar o tópico, aqui esta a solução:
if((MyCanvas.getGameAction(48) == 0) && (MyCanvas.getGameAction(49) == 0) && (MyCanvas.getGameAction(50) == 0) && (MyCanvas.getGameAction(51) == 0) && (MyCanvas.getGameAction(52) == 0) && (MyCanvas.getGameAction(53) == 0) && (MyCanvas.getGameAction(54) == 0) && (MyCanvas.getGameAction(55) == 0) && (MyCanvas.getGameAction(56) == 0) && (MyCanvas.getGameAction(57) == 0)){
//QWERTY Keypad;
}
else{
//Numeric Keypad;
}
Testei em 6 aparelhos de diferentes marcas e modelos e está detectando: Teclado Qwerty ou Normal.
[quote=boone]Ontem mesmo estava comentando com um colega de como a falta de testes leva a conclusões precipitadas.
Veremos quem ri por último.[/quote][/quote]
Esta é uma ótima solução. Eu havia visto uma onde pedia o usuário para digitar, mas esta é mais prática. Porém, será que funciona em BlackBerry, por exemplo? Pois, nem todos os aparelhos QWERTY retornam os mesmos códigos de tecla como fazem os aparelho T9.
A solução do Boone também funciona, mas é uito trabalhosa e fica complicado, pois, são muitos celulares no mercado e são muitos lançamentos sendo feitos.
Nenhuma das duas é eficaz, mas funciona.
Sim, funciona no BlackBerry. Nos testamos…
[quote=JavaES]Esta é uma ótima solução. Eu havia visto uma onde pedia o usuário para digitar, mas esta é mais prática. Porém, será que funciona em BlackBerry, por exemplo? Pois, nem todos os aparelhos QWERTY retornam os mesmos códigos de tecla como fazem os aparelho T9.
A solução do Boone também funciona, mas é uito trabalhosa e fica complicado, pois, são muitos celulares no mercado e são muitos lançamentos sendo feitos.
Nenhuma das duas é eficaz, mas funciona.
[/quote]