GetLine1Number () no funciona

Quiero conseguir el número de teléfono de SIM usando android pero cuando consigo el número la longitud es cero! Aquí está el código:

TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(getApplicationContext().TELEPHONY_SERVICE); String s=mTelephonyMgr.getLine1Number(); Toast.makeText(getBaseContext(), "The length is "+s.length(), Toast.LENGTH_LONG).show(); 

Pero brindará "La longitud es cero". Cuando imprimo el número no imprimirá nada. ¿Puede alguien darme una solución?

Obtenga el número SIM

  TelephonyManager telemamanger = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String getSimSerialNumber = telemamanger.getSimSerialNumber(); 

Obtener número de teléfono

 TelephonyManager tMgr =(TelephonyManager)mAppContext.getSystemService(Context.TELEPHONY_SERVICE); mPhoneNumber = tMgr.getLine1Number(); 

Esto le mostrará si es aplicable otherwie mostrar esto .

Buddy me pasa a mí también, al final llego a conocer esta solución

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.