[android]sim内の情報取得

android端末のSIMカード内の情報にアクセスする方法です

HoneyComb端末にゲームコントローラを接続する

TelephonyManagerの主なgetメソッド
メソッド名 情報
getLine1Number 電話番号
getDeviceId デバイスID
getSimCountryIso SIMの国コード
getSimOperator MCC+MNC (mobile country code + mobile network code)
getSimOperatorName サービスプロバイダの名前
getSimSerialNumber SIMのシリアル番号
getSimState SIMの状態(通信可能か、PINロックされているかなど)
getVoiceMailNumber ボイスメールナンバー

リファレンス
android.telephony.TelephonyManager
もっといろいろとgetメソッドがある。getはあるけどsetはない。
■例:電話番号を取得する場合は、以下のようにする

TelephonyManager telephonyManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
String line1Number = telephonyManager.getLine1Number();

なお、マニフェストにandroid.permission.READ_PHONE_STATE パーミッションの許可を記載する必要があります。
AndroidManifest.xml

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

と、書いた後に、参照元でより詳しく記載されていることに気づく。。。
■取得できる情報の意味について
http://cocoadays.blogspot.jp/2010/09/ios-udidiccidimei.html
■ICCIDの取得方法について(リンクのコピペでないと見れない?)
https://groups.google.com/forum/#!topic/android-group-japan/lc4GFYPid5g

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です