其他分享
首页 > 其他分享> > android – 如何获取可用的gsm网络列表?

android – 如何获取可用的gsm网络列表?

作者:互联网

我目前正在编写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();
        }
    };
}

但在这一点上,我想知道是否有网络ID像无线网络的bssid?这是如何用gsm处理的?我需要确定gsm网络,我正在获得信号强度.

编辑:

“network-id”,意思是“cell-id”.我需要的是*范围内所有可用的* gsm网络列表及其接收质量. operator-id对我来说不是很感兴趣,因为我需要识别单元格和网络,我从中获得信号强度.

解决方法:

每个操作符都有一个唯一的ID,一个名为PLMN(公共陆地移动网络)的5位数字.

该号码由3位MCC(移动国家代码)和2位MNC(移动网络代码)组成.

wikipedia list是一个相对完整的列表.

标签:android,gsm,signal-strength
来源: https://codeday.me/bug/20190627/1299536.html