MVNOの識別って出来ないのか、調べたのでメモ。
実機お試しはしていないので、これを使えば出来るのでは?という段階。
確認したら追記予定です。
キャリアコードってなんだっけ
スマホの電話回線のキャリアを識別出来る数字。
MCC(Mobile Country Code)+MNC(Mobile Network Code)
#取得方法
キャリアコードでとる方法と、キャリアコードの名前をとる方法がある。
キャリアコードを取得
TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TELEPHONY_SERVICE);
String carrierCode = tm.getSimCarrierId();
キャリアコード名を取得
TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TELEPHONY_SERVICE);
CharSequence carrierCodeName = tm.getSimCarrierIdName();
パーミッション設定
TelephonyManagerを使用する場合、AndroidManifest.xmlに権限の宣言が必要です。
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
キャリアコードの一覧
UQ系がMCC441なのだけど、上記にはなかったので、もうちょっと調べないとダメかも。
##プロバイダの取得
おなじくTelephonyManagerで、getSimOperatorというのがあり、
これの説明がズバリ「MCC+MNCを返します」となってる。
こっちを使うのでは?
https://developer.android.com/reference/android/telephony/TelephonyManager#getSimOperator()