我在安卓4.0+上很难获得RSSI或网络优势。不过,我目前使用的方法适用于下面任何版本的android。
这是我正在尝试的..。
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnected()) {
signalStrengthTextView = (TextView) view.findViewById(R.id.signalStrengthTextView);
signalStrengthListener = new SignalStrengthListener();
((TelephonyManager)getSystemService(TELEPHONY_SERVICE)).listen(signalStrengthListener,SignalStrengthListener.LISTEN_SIGNAL_STRENGTHS);
int SIGNAL_STRENGTH_VALUE = 0;
try {
SIGNAL_STRENGTH_VALUE = Integer.parseInt(signalStrengthTextView.getText().toString());
} catch(NumberFormatException nfe) {
}值总是返回为99,而不是正确的RSSI。任何帮助都是很棒的!
发布于 2012-07-03 08:01:30
不是说我是电话API的专家。以下是不更新的值,直到它们偏离了最后的范围。
SIGNAL_STRENGTH_NONE_OR_UNKNOWN (99)
SIGNAL_STRENGTH_GREAT (16-32)
SIGNAL_STRENGTH_GOOD (8-15)
SIGNAL_STRENGTH_MODERATE (4-7)
SIGNAL_STRENGTH_POOR (0-3)希望这能帮点忙..。不是解决办法,但可能会有帮助。
https://stackoverflow.com/questions/11279191
复制相似问题