TelephonyManager devuelve null para el número IMEI: ¿qué puede causar esto?

Estoy trabajando en una aplicación de Android y estoy recibiendo null nuevo para el número IMEI cuando se utiliza TelophonyManager . Esto está sucediendo en varios teléfonos de Huawei. (Todos ellos son Ascend Y530s).

Los teléfonos tienen tarjetas SIM y de otra manera parecen estar funcionando normalmente. Tenía la impresión de que sólo un teléfono roto devolvería IMEI null . Claramente este no es el caso..

Preguntas. ¿Qué es exactamente este número IMEI – es decir, dónde está almacenado en el dispositivo? ¿Y qué significa cuando un teléfono aparentemente fino devuelve su valor como null ?

EDITAR

Debo mencionar que el número IMEI no siempre es null . Alrededor de la mitad de las veces parece ser válido (aunque esto es muy difícil de medir ya que tenemos 5 teléfonos que devuelven números nulos IMEI \ a veces )

Después de su comentario, para obtener un identificador de dispositivo único para la aplicación de la encuesta, le sugeriría que use Settings.Secure.ANDROID_ID como su identificador único.

 String myAndroidDeviceId = Secure.getString(getApplicationContext().getContentResolver(), Secure.ANDROID_ID); 

O puede utilizar tanto como

 public String getUniqueID(){ String myAndroidDeviceId = ""; TelephonyManager mTelephony = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); if (mTelephony.getDeviceId() != null){ myAndroidDeviceId = mTelephony.getDeviceId(); }else{ myAndroidDeviceId = Secure.getString(getApplicationContext().getContentResolver(), Secure.ANDROID_ID); } return myAndroidDeviceId; } 
  • Obtener la velocidad actual de Internet (móvil y Wifi) con Android
  • Ya que Android 6.0 escuchando los cambios de PhoneStateListener.LISTEN_DATA_CONNECTION_STATE parece que ya no necesita permiso de READ_PHONE_STATE
  • Cómo encontrar el número saliente en el administrador de telefonía
  • GetNeighboringCellInfo () devuelve la lista null
  • ¿Cómo obtener la ubicación actual y el tiempo de descolgado de la llamada saliente (tiempo de llamada exacto seleccionado)?
  • ¿Cómo saber si estoy en una llamada en Android?
  • Obtener los detalles del último registro de llamadas después de finalizar la llamada utilizando el receptor de difusión
  • No se puede obtener cadena no vacía de PhoneStateListener :: onCallStateChanged
  • Cómo determinar una llamada realizada es local o STD O ISD
  • Cómo no disparar PhoneStateListener.CALL_STATE_RINGING si ya está hablando y un segundo llamante está llamando
  • Cómo desconectar la llamada en android 4.1.2 nexus programmatically
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.