5

私は現在、gsm信号の信号強度を測定することになっているAndroid2.1のコードの一部を書いています。私が必要としているのは、対応する信号強度に一致するある種のネットワークIDを持つある種のリストです...私はこれまでに得ました:

public class main extends Activity {
    TelephonyManager telManager;
    GSMListener gsmListener;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        gsmListener = new GSMListener();

        telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
        telManager.listen(gsmListener ,PhoneStateListener.LISTEN_SIGNAL_STRENGTHS);

    }

    private class GSMListener extends PhoneStateListener {
        /* Get the Signal strength from the provider, each time there is an update */
        @Override
        public void onSignalStrengthsChanged(SignalStrength signalStrength) {
            super.onSignalStrengthsChanged(signalStrength);

            Toast.makeText(main.this, "GSM Cinr: " + signalStrength.getGsmSignalStrength(), Toast.LENGTH_SHORT).show();
        }
    };
}

しかし、この時点で、wifiネットワーク用のbssidのようなnetwork-idがあるのだろうか?これはgsmでどのように処理されますか?信号強度を取得しているgsmネットワークを特定する必要があります。

編集:

「network-id」は「cell-id」を意味します。私が必要としているのは*all available*、範囲内のgsmネットワークとその受信品質のリストです。セルとネットワークを識別する必要があるため、operator-idはあまり重要ではありません。ここから、信号強度を取得しています。

4

1 に答える 1

5

すべてのオペレーターは、PLMN(Public land mobile network)と呼ばれる5桁の番号である一意のIDを持っています。

その番号は、3桁のMCC(モバイル国コード)とそれに続く2桁のMNC(モバイルネットワークコード)で構成されます。

ウィキペディアのリストは比較的完全なリストです。

于 2010-07-02T23:08:32.033 に答える