我目前正在编写一些与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对我来说并不重要,因为我需要识别单元和网络,我正在从中获取信号强度。