tiene replacement omv msisdn movistar meaning imsi iccid extraer celular android

android - replacement - msisdn movistar



obtener IMSI desde el teléfono Android? (3)

Estoy desarrollando una aplicación que requiere obtener el IMSI. Yo suelo:

TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String imsi = mTelephonyMgr.getSubscriberId();

Funciona para la mayoría de los teléfonos, pero unos pocos teléfonos solo devuelven 6 dígitos en lugar de 15. Lo que está mal.

¿Alguien sabe una forma alternativa de recuperar el IMSI programáticamente? Otros APIS? métodos?

Saludos


Este código funciona bien en mi proyecto.

TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE); String imsi = telephonyManager.getSubscriberId();

y no olvides el permiso

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>



primero: de wiki

Un IMSI generalmente se presenta como un número largo de 15 dígitos, pero puede ser más corto

más corto se refiere a un modelo imsi más antiguo que tenía 14 dígitos. no es relevante aquí

Segundo: no depende del teléfono sino de la red.

devuelve 6 dígitos porque el software de Android en ese teléfono en particular está configurado para devolver solo la parte de identificación no personal del imsi, los primeros 6 dígitos que definen el país y el operador de red