【发布时间】:2011-08-09 11:00:21
【问题描述】:
我正在通过调用此函数检查网络类型
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");
//Need to get wifi strength
} else if (netType == ConnectivityManager.TYPE_MOBILE) {
Log.i(TAG, "GPRS/3G connection");
//Need to get differentiate between 3G/GPRS
}
}
我不想定期轮询 wifi 强度,但是当我做一些网络工作时,我需要检查我无法获得的连接的 wifi 强度。 其次,当我将 netType() 设为 MOBILE 时,如何确定其 3G/GPRS 形式的 netSubType,我的意思是 3g/Gprs 等的整数值是多少。
请任何人知道如何做到这一点。
谢谢
【问题讨论】:
标签: android