Как получить собственный номер мобильного телефона в android

Я хочу получить мобильный номер собственного мобильного телефона.

Я искал класс телефонии Android, но я не могу найти там никакой полезной функции.

заблаговременно за вашу помощь.

Ответ 1

Можно сделать следующее:

TelephonyManager mTelephonyMgr;  
mTelephonyMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);   

String yourNumber = mTelephonyMgr.getLine1Number();  

Добавить разрешение в файл манифеста:

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

Ответ 2

Я думаю, что есть случаи, когда телефон не знает своего собственного номера - это как-то зависит от поставщика сети/SIM-карты.

У меня есть одна SIM-карта, где она работает, другая (другой провайдер, предоплата), где она не работает.

Ответ 3

Попробуйте использовать следующий код:

TelephonyManager mTelephonyMgr =
(TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);

String sDeviceID = mTelephonyMgr.getDeviceId();
String sSimSerial = mTelephonyMgr.getSimSerialNumber(); 

Задайте следующее разрешение

android.permission.READ_PHONE_STATE in Android Manifest file