Java - AndroidでSIMカード番号を回復する

電話番号は物理的ではなく、SIMカードに保存されているか、通信事業者のネットワークから取得されているため、この問題に対する信頼できる解決策はありません。最善の解決策は、ユーザーに自分の番号を自分で入力するように依頼することです。ここでは解決策を示しますが、将来的に改善される予定のものです.

クラス TelephonyManager は、テレフォニー サービスとデバイスに関する情報を提供します。Android アプリでは、このクラスのメソッドを使用して、SIM 番号とそのシリアル番号を決定できます (例:

メソッド getLine1Number() 1 行目の電話番号を返し、MISISDN が利用できない場合は null を返します。

 
TelephonyManager telemamanger=(TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String getSimSerialNumber = telemamanger.getSimSerialNumber();
String getSimNumber = telemamanger.getLine1Number();
ファイルにアクセス権を追加する必要があります Androidmanifest.xml:

<使用権限android:name = "android.permission.READ_PHONE_STATE"/>
References:
http://stackoverflow.com/questions/8570945/get-msisdn-from-the-sim-using-android