我想知道设备上当前的互联网连接吗?
在android中我发现这两个属性知道网络类型如..但是如何了解3G网络?ConnectivityManager.TYPE_WIFI
ConnectivityManager.TYPE_MOBILE
请帮帮我
提前致谢!
答案 0 :(得分:6)
现在我可以知道3种类型的网络如下..........
ConnectivityManager connec =(ConnectivityManager)activity.getSystemService(Context.CONNECTIVITY_SERVICE);
android.net.NetworkInfo wifi = connec.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
android.net.NetworkInfo mobile = connec.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
NetworkInfo info = connec.getActiveNetworkInfo();
int netSubType = info.getSubtype(); e
if (wifi.isConnected()) { wifi is connected } else if (mobile.isConnected()) {
if(netSubType == TelephonyManager.NETWORK_TYPE_UMTS)
{
3G is connected
}
else
{
GPRS is connected
}
}
答案 1 :(得分:5)
尝试使用此代码段获取subType()
:
NetworkInfo info = mConnectivity.getActiveNetworkInfo();
int netSubType = info.getSubtype();
然后如果netSubType
是TelephonyManager.NETWORK_TYPE_UMTS
,那么它是一个3G网络
更新:这里有什么'信息'
答案 2 :(得分:0)
据我所知,3G仅在ConnectivityManager.TYPE_MOBILE
下。
如果您使用的是模拟器,则可以按F8连接和断开3G。
它还会断开GPRS连接。使用ConnectivityManager.TYPE_MOBILE
两个。