如何获取可用的GSM网络列表?

5

我目前正在编写一些与Android 2.1相关的代码,旨在测量GSM信号的信号强度。 我需要的是一种列表,其中包含某种网络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();
        }
    };
}

但是此时,我想知道是否有类似于Wi-Fi网络的BSSID的网络ID?GSM如何处理这个问题?我需要识别我正在接收信号强度的GSM网络。
编辑:
通过“network-id”,意思是“cell-id”。我需要一个列表,列出范围内所有可用的GSM网络及其接收质量。运营商ID对我来说并不重要,因为我需要识别单元和网络,我正在从中获取信号强度。
1个回答

5

每个运营商都有一个唯一的ID,一个称为PLMN(公共移动网络)的五位数字。

该数字由一个三位数的MCC(移动国家代码)和一个两位数的MNC(移动网络代码)组成。

维基百科列表是一个相对完整的列表。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接