我想在移动设备中展示互联网的网络力量.
现在我可以使用下面的代码检查来自wifi的连接,但我还需要网络信号强度.所以请告诉我需要添加哪些代码?
谢谢!
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetInfo = connectivityManager
.getActiveNetworkInfo();
NetworkInfo mobNetInfo = connectivityManager
.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
TextView netStatus = (TextView) findViewById(R.id.netStatus);
if (activeNetInfo != null) {
netStatus.setText(" Connection Status - Connected "+activeNetInfo.getTypeName());
} else if (mobNetInfo != null) {
netStatus.setText(" Connection Status - Connected "+mobNetInfo.getTypeName());
} else {
netStatus.setText(" Connection Status - Not Connected ");
}
Run Code Online (Sandbox Code Playgroud)
试试这段代码:
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo Info = cm.getActiveNetworkInfo();
if (Info == null || !Info.isConnectedOrConnecting()) {
Log.i(TAG, "No connection");
} else {
int netType = Info.getType();
int netSubtype = Info.getSubtype();
if (netType == ConnectivityManager.TYPE_WIFI) {
Log.i(TAG, "Wifi connection");
WifiManager wifiManager = (WifiManager) getApplication().getSystemService(Context.WIFI_SERVICE);
List<ScanResult> scanResult = wifiManager.getScanResults();
for (int i = 0; i < scanResult.size(); i++) {
Log.d("scanResult", "Speed of wifi"+scanResult.get(i).level);//The db level of signal
}
// Need to get wifi strength
} else if (netType == ConnectivityManager.TYPE_MOBILE) {
Log.i(TAG, "GPRS/3G connection");
// Need to get differentiate between 3G/GPRS
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8041 次 |
| 最近记录: |