私は現在、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はあまり重要ではありません。ここから、信号強度を取得しています。