8 votos

Diferencia entre Android ID y ID de dispositivo

¿Cuál es la diferencia entre el ID de Android y el ID del dispositivo?

Así es como los obtengo:

ID de Android:

String androidID = Settings.Secure.getString(MainActivity.this.getContentResolver(),
            Settings.Secure.ANDROID_ID);

ID del dispositivo:

String deviceID = ((TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE))
                    .getDeviceId()

Necesito identificar de forma única mi dispositivo Android. El uso de deviceID requiere el permiso para "realizar y administrar llamadas telefónicas". Mientras que usar androidID no requiere dicho permiso. Por lo tanto, opto por androidID ya que no necesito privilegios de gestión de llamadas.

  1. ¿Cuál es la diferencia exacta entre los dos? Si no hay ninguna, ¿por qué hay dos IDs?

  2. ¿Ambos IDs se restablecerán si restablezco mi dispositivo a los valores de fábrica?

  3. Sé que deviceID funciona para todas las versiones de Android. ¿Funcionará androidID para todas las versiones?

14voto

Izzy Puntos 45544

Mientras que tu pregunta se enfoca en un problema de desarrollo (que está fuera de tema aquí), la respuesta es relevante para los usuarios también, así que voy a responder:

  • DeviceID: Este es el serial del dispositivo, el cual debería persistir incluso después de un restablecimiento de fábrica.
  • AndroidID: Este se establecerá en el primer arranque (ya sea con un dispositivo completamente nuevo, o después de un restablecimiento de fábrica). Como se implica, no sobrevive a un restablecimiento de fábrica
  • Existe un segundo "Android_ID" el cual es generado y utilizado por el Marco de Servicios de Google (GSF), y por lo tanto a menudo referido como "ID de GSF". Se comporta básicamente como el AndroidID mencionado anteriormente (por ejemplo, no sobrevive a un restablecimiento de fábrica), y coexiste con él.
  • Además, está el GAID (ID de Publicidad de Google), el cual puede ser restablecido por el usuario a través de la aplicación Configuración de Google.

Durante la "operación normal" (es decir, siempre y cuando no restablezcas tu dispositivo a la configuración de fábrica o restablezcas el GAID), todos estos IDs pueden ser utilizados para identificar el dispositivo. Al usar múltiples usuarios (a través de perfiles de usuario) en un dispositivo, todos excepto el DeviceID incluso identificarían al usuario (perfil).

Hasta donde sé, todos esos IDs están disponibles en todas las versiones de Android (al menos en las que son actualmente relevantes, es decir, GB/2.3 en adelante). Los dos últimos obviamente solo si se instalan las GApps, por lo que en dispositivos que ejecuten una ROM personalizada sin GApps, podrían no existir.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X