GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Propriedade do celular(Numero)


#1

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


#2

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


#3

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!


#4

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


#5

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.


#6

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


#7

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.


#8

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!


#9

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 !


#10

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!


#11

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


#12

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!


#13

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++.


#14

Ahhhh ... entendi.. estava dessituado! :wink:

Cya!


#15

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.


#16

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.

:?


#17

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


#18

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???


#19

Não existe um padrão.


#20

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