Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 13/08/14, 16:46:46
Array

[xs_avatar]
esnaucer esnaucer no está en línea
Usuario novato en la web
 
Fecha de registro: ene 2009
Mensajes: 7
Modelo de smartphone: HTC P3450

Identificar terminal

Buenas tardes,
estoy implementando una app en la cual necesito registrar unos eventos en base de datos.
El problema es que necesito identificar que teléfono hace la petición.

Había pensado en registrar el numero de teléfono del terminal, pero la pregunta seria, ¿es posible recoger el numero de teléfono del terminal con java?

O por otra parte, ¿como podría identificar a cada teléfono sin utilizar el numero?

Saludos.
Responder Con Cita


  #2  
Viejo 13/08/14, 20:57:36
Array

[xs_avatar]
kriogeN kriogeN no está en línea
Colaborador/a
· Votos compra/venta: (1)
 
Fecha de registro: oct 2010
Localización: Murcia
Mensajes: 4,637
Modelo de smartphone: Samsung Galaxy S7 Edge SM-G935F
Tu operador: Vodafone
No puedes identificar al teléfono por su número, por eso servicios como WhatsApp usan confirmación por SMS.

En cuanto a la identificación única en Android:

Respuesta corta: No existe para todos los casos.

Respuesta larga:

Puedes usar el IMEI del dispositivo, pero habrán dispositivos sin IMEI, como por ejemplo las tablets que no tienen 3G. También el IMEI se puede haber convertido en "genérico" por un mal uso de ciertos archivos (como el EFS de los móviles Samsung), y tendrías muchos móviles con el mismo IMEI.

Puedes usar el MAC del WiFi, pero sólo funcionará si el WiFi está encendido. Si obligas a que el usuario tenga encendido el WiFi es la mejor opción, aunque al igual que el IMEI se puede corromper y convertirse en genérico. Existen dispositivos que no tienen WiFi, y en ese caso obviamente no funcionará tampoco, pero se pueden contar con los dedos de una mano.

Existe un método (que es el más generalizado pero ni mucho menos te da un valor único) que es obtener el UUID. El UUID es un número completamente aleatorio de 128 bits que se genera en el primer reset del móvil (si haces un HardReset al móvil se genera uno nuevo). Obviamente las posibilidades de colisión entre 2 dispositivos, y es más, entre 2 dispositivos que vayan a usar tu app es casi nula, por no decir imposible, pero existir la posibilidad existe. Otra pega que tiene es que la mayoría de móviles con Android 2.2 tienen un bug en el que en todos los casos devuelve siempre el mismo UUID, así que todos esos móviles comparten el UUID.

Otra opción es que el dispositivo almacene un identificador que le mandas tú la primera vez, y siempre use ese identificador, pero si el usuario borra los datos de la app le enviarás un identificador nuevo y no sabrás que usaba el antiguo.

Última edición por kriogeN Día 13/08/14 a las 21:02:56.
Responder Con Cita
  #3  
Viejo 14/08/14, 08:40:43
Array

[xs_avatar]
esnaucer esnaucer no está en línea
Usuario novato en la web
 
Fecha de registro: ene 2009
Mensajes: 7
Modelo de smartphone: HTC P3450

Vaya me pensaba que seria mas fácil identificar cada terminar.

Creo que voy a quedarme con la opción de enviarle al terminar un código identificador desde la API, creo que es buena solución ya que la app es privada para un empresa.

Muchas gracias por la respuesta me ha servido de mucho y es muy completa.

Saludos.
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 19:06:57 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /