如何知道设备上运行的当前互联网连接?

时间:2011-04-08 09:20:16

标签: android connection 3g

我想知道设备上当前的互联网连接吗?

在android中我发现这两个属性知道网络类型如..

  

ConnectivityManager.TYPE_WIFI

     

ConnectivityManager.TYPE_MOBILE

但是如何了解3G网络?

请帮帮我

提前致谢!

3 个答案:

答案 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();

然后如果netSubTypeTelephonyManager.NETWORK_TYPE_UMTS,那么它是一个3G网络

更新:这里有什么'信息'

答案 2 :(得分:0)

据我所知,3G仅在ConnectivityManager.TYPE_MOBILE下。

如果您使用的是模拟器,则可以按F8连接和断开3G。

它还会断开GPRS连接。使用ConnectivityManager.TYPE_MOBILE两个。