Propriedade do celular(Numero)

Oi pessoal :slight_smile: ,
Alguem sabe qual a propriedade para que eu possa pegar o numero do aparelho em que a midlets está rodando???
[]s,
Gi

Utilize isso…

String sNum = System.getProperty(“wireless.messaging.sms.smsc”);
ou
String sNum = System.getProperty(“wireless.messaging.mms.mmsc”);

Se retornarem ‘null’, tente acrescentar no JAD, atributo ‘MIDlet-permissions’, este valor: java.lang.System.getProperty

Luciano

Tentei fazer isso no meu JAD mas não deu certo :frowning:

Quando executei o código no emulador ele me retornou o número do celular, mas no aparelho Nokia 6100 retornou null.

Alguma ideia do que pode ser?

Obrigado!

Aqui estou utilizando um Motorola V300, e o guia do programador dele faz referencia a outros atributos tambem:
“MSISDN” e “IMEI"
Certa vez num forum que alguem usava um atributo
"com.nokia.IMEI”, mas nao funcionou p/ mim.
Verifique nos guias e foruns de desenvolvimento da Nokia para verificar se existe uma forma.

Algo tmbm que vc precisa saber é que, se tudo der errado, aí a unica forma é validar seu MIDlet. Isso geralmente e’ feito por empresas tais como VeriSign. Só assim p/ estes atributos retornarem os dados corretamente. Veja estes sites para maiores informações:
http://www.javaverified.com/
http://www.allaboutsymbian.com/forum/showthread.php?t=27756

Um abraço.
Luciano

[quote=tiagops]Tentei fazer isso no meu JAD mas não deu certo :frowning:

Quando executei o código no emulador ele me retornou o número do celular, mas no aparelho Nokia 6100 retornou null.

Alguma ideia do que pode ser?

Obrigado!
[/quote]

Pequeno padawan, acostume-se no mundo J2ME a uma coisa funcionar específicamente para um fabricante/modelo.

Aquela dica funciona para 1 celular, não para todos.

Se vc quer pegar o IMEI do fone (que nada tem a ver com o número da linha), existe uma forma particular que cada fabricante implementa.

Desconheço uma forma de vc conseguir isto nos Nokia da vida.
Frequento o fórum deles e lá tb é uma dúvida constante sobre como pegar o IMEI.

Agora quanto ao número do telefone, se vc conseguir, sorte sua, pq tb tem muita gente atrás disso e até hoje num ouvi falar de alguém que tenha tido sucesso nisto.

Isso realmente é um problema :frowning:
Entao quando vendemos um sistema nao saberemos se ele ira rodar no aparelho do cliente… Ficamos no escuro :frowning:

OK, valeu pessoal

Na verdade não vai rodar se vc se prender justamente a particularidade de um fabricante/modelo. Agora se vc usar programação defensiva e durante a execução da aplicação, detectar o que o aparelho tem ou não, ela vai rodar em qualquer um.

Outra maneira seria compilar a aplicação para cada um dos aparelhos-alvo, o que pode tornar-se meio chato de se fazer.

Eu prefiro a primeira opção.
Por exemplo, eu quero usar o backlight do aparelho na minha aplicação, no Siemens acesso de um jeito, no Nokia de outro, então o que eu faço é padronizar este acesso através de uma classe e ela sim, ou usa a API do Siemens ou a API do Nokia, dependendo do que ela detectar em runtime.

Verdade, mas mesmo assim ainda existem uns riscos né?
Tipo conexão. Alguns celulares só aceitam WAM outros já aceitam Socket e http…

O que temos que ter em mente é sempre que for desenvolver um produto, colocar na proposta e requisitos um aparelho que atenda a solução.

Por enquanto estou fazendo como você e não colocando APIs proprietárias pra não engessar a aplicação!

Obrigado!

Eu uso APIs proprietárias sim, da Nokia e Siemens ! na mesma aplicação.
O que eu disse é que dentro da classe eu verifico se estou num destes aparelhos e se estou, se tenho a dita cuja da API que me prove acesso aos recursos de backlight e vibration, por exemplo.
Se tiver eu uso, senão, não acontece nada…

Veja, estou falando de celulares MIDP 1.0. Nada de MIDP 2.0 !

Alguem conseguiu pegar o no. do celular e o IMEI num V600?

Segundo o motocoder eh possivel, mas os comandos:

System.getProperty(“phone.imei”); e

System.getProperty(“MSISDN”);

me retornam null…

De acordo com o Motocoder:
“This method is not available to unsigned applications.”

dei uma olhada por cima no www.javaverified.com, mas queria saber se tem alguma outra maneira de “liberar” essas informacoes pro v600

Valeu!

veja bem…
no caso da motorola (nao sei dos outros), por questoes de sacanagem mesmo, eles precisam assinar seu codigo para poder compilar aplicaçoes q usem API proprietaria deles. Por isso da esse problema q vc citou. Nunca fiz, mas me disseram q eles fazem tipo um contrato com vc, dizendo q vc nao pode vender, etc etc etc…

falou

O número do aparelho seria o número do telefone?! (número da linha?)

Isto não é travado?! Não será somente através da API IMP que será possível obter essas informações?

Abraços!

O número do aparelho é uma coisa (tb conhecido como IMEI) e é do aparelho, independente de qual chip esteja nele.

O número da linha que está no aparelho, é outra coisa e este vai no CHIP.

O que atualmente é possível obter em alguns aparelhos é o IMEI.

Para pegar o nº da linha (no SIM Card), creio só ser possível com aparelhos rodando Symbian e a aplicação em C++.

Ahhhh … entendi… estava dessituado! :wink:

Cya!

Olá todos!!!

Alguém poderia me informar qual biblioteca ou método que devo utilizar para que eu possa identificar o número do celular em uma aplicação J2ME.
Faço parte de um projeto o qual estamos desevolvendo uma aplicação com J2SE e J2ME e precisamos que o a aplicação J2ME reconheça(identifique) o número do celular (como uma identificação de chamada).

Obrigada.
Karen.

Bom, a resposta a sua dúvida já esta neste próprio tópico. Então acho que faltou mesmo foi vc ler todo ele desde o início.

:?

Olá!!!

Obrigada pela atenção…
Vimos o tópico desde o início… mas não conseguimos obter o número do aparelho… ele nos retornou um número que não sabemos de onde ele está pegando… Testamos com dois celulares da Motorola V3 e os dois retornaram números diferentes dos aparelhos. Um dos testes ele retornou o que parece ser o número do DDI e do DDD (ex: 551984529678) e o restante dos números não era o número correto do celular.
Vc saberia nos dizer de onde ele está puxando esses números?

Obrigada

Então… conclusão…

Para cada celular eu tenho uma forma de conseguir o “número de série”?

Não existiria um padrão???

Não existe um padrão.

Bom galera, esses atributos “wireless.messaging.sms.smsc” ou “wireless.messaging.mms.smsc” retornam um numero sim, mais o do servidor de SMS e MMS respectivamente.

Quem sabe há uma forma para extrair o numero da msma forma que o celular pode fornecer em “Visualizar meu numero”…

Acho que não é impossivel…ou será

Flw