2017-01-04 3 views
1

Androidのローミングキャリアを知る方法はありますか?Androidのローミングキャリアを発見

getNetworkOperatorName()はキャリア名を返しますが、IMSIから名前を取得します。このキャリアは、ローミング中に使用されたものではない可能性があります。

+0

これは役立つ可能性があります。https://groups.google.com/forum/?fromgroups=#!topic/android-developers/ASVpv7RbLL8 – Distwo

答えて

0

あなたはthis threadを見ましたか?

だと思います。this part might help youです。ここで

アンドロイドで興味深いGSM機能は以下のとおりです。

TelephonyManager.getSimOperator() ホームオペレータ(MCC + MNC)を返します。これはSIMに格納されているIMSIの最初の部分を返します。

ServiceState.getOperatorNumeric() 現在の演算子(MCC + MNC)を返します。これは現在のセルサイトから取得されます。

GsmCellLocation.getLac() 現在のセルサイトのロケーションエリアコードを返します。

GsmCellLocation.getCid() 現在のセルサイトのセルIDを返します。これらの

一部は、CDMA同等持つ:非 "世界の携帯電話" で

TelephonyManager.getSimOperator() を、これは、IMSI(例えば3100004)の最初の6桁の数字を返します。 CDMA IMSIのMECHは であり、2桁は3でなくても役に立たないため、これは偽のものです。最後の4は で、実際には加入者IDの先頭です。これは私が知る限り、Android のバグです。世界の電話機では、おそらくヨーロッパのオペレーターのためにMCC

+ MNCを返します。

ServiceState.getOperatorNumeric() MCC + 00を返します。これは、キャリアを特定しないため、ほとんど役に立たないです。

CdmaCellLocation.getSystemId() 現在のセルのシステムIDを返します(これは、セルサイトを所有するオペレータを識別します)。これはMNCに似ています。

CdmaCellLocation.getNetworkId() 現在のセルサイトのネットワークIDを返します。これはLACに似ています。

CdmaCellLocation.getBaseStationId() 現在のセルサイトの基地局IDを返します。これはCIDに似ています。

欠けているものは、ホームSIDを返す TelephonyManager.getSimOperator ()のCDMA相当品です。