Java - Восстановить номер сим-карты на Android
Надежного решения этой проблемы не существует, потому что номер телефона не является физическим и хранится на сим-карте или извлекается из сети оператора. Лучшее решение — попросить пользователя ввести свой номер самостоятельно. Здесь мы даем решение, но то, которое еще предстоит улучшить в будущем.Класс TelephonyManager предоставляет сведения о службе телефонии и устройстве. Приложение для Android может использовать методы этого класса для определения номера сим-карты и ее серийного номера, например.
Метод getLine1Number() возвращает номер телефона для строки 1 и возвращает null, если MISISDN недоступен.
Вы также должны добавить разрешение в файл Androidmanifest.xml:
TelephonyManager telemamanger=(TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String getSimSerialNumber = telemamanger.getSimSerialNumber();
String getSimNumber = telemamanger.getLine1Number();
< uses-permission android:name="android.permission.READ_PHONE_STATE"/>References:
http://stackoverflow.com/questions/8570945/get-msisdn-from-the-sim-using-android