判斷網路型別是wifi,還是3g,還是2g網路,對不同
說明:下面用到的資料移動2g,聯通2g,聯通3g,wifi我都已經測試過,暫時手上
沒有電信的卡,所以沒有驗證,有電信手機的同事,可以驗證一下,驗證後將結果
傳送給大家。
connectivitymanager connectmgr = (connectivitymanager) this
.getsystemservice(context.connectivity_service);
networkinfo info = connectmgr.getactivenetworkinfo();
一、判斷網路是否是wifi,在判斷之前一定要進行的非空判斷,如果沒有任何網路
連線info ==null
info.gettype() == connectivitymanager.type_wifi
二、判斷是否是手機網路
info !=null && info.gettype() == connectivitymanager.type_mobile
手機網路進行詳細區分:
info.getsubtype() 這裡使用 getsubtype(),不是 gettype(),gettype()返回的
是0,或者1,是區分是手機網路還是wifi
info.getsubtype()取值列表如下:
* network_type_cdma 網路型別為cdma
* network_type_edge 網路型別為edge
* network_type_evdo_0 網路型別為evdo0
* network_type_evdo_a 網路型別為evdoa
* network_type_gprs 網路型別為gprs
* network_type_hsdpa 網路型別為hsdpa
* network_type_hspa 網路型別為hspa
* network_type_hsupa 網路型別為hsupa
* network_type_umts 網路型別為umts
聯通的3g為umts或hsdpa,移動和聯通的2g為gprs或edge,電信的2g為cdma,電信
的3g為evdo
android獲取手機的ip位址
privatestring getphoneip() } } } catch(exception e) return ""; }
/** * 判斷是否是2g網路
* * @param context
* @return
*/@suppresslint(
"newapi")
public
boolean getnetworktype()
else
if (networkinfo.gettype() ==connectivitymanager.type_mobile)
else
break
; }}}
else
return
is2g;
}
Android網路型別判斷 2g 3g wifi
判斷網路型別是wifi,還是3g,還是2g網路,對不同 說明 下面用到的資料移動2g,聯通2g,聯通3g,wifi我都已經測試過,暫時手上 沒有電信的卡,所以沒有驗證,有電信手機的同事,可以驗證一下,驗證後將結果 傳送給大家。connectivitymanager connectmgr connec...
Android網路型別判斷 2g 3g wifi
判斷網路型別是wifi,還是3g,還是2g網路,對不同 說明 下面用到的資料移動2g,聯通2g,聯通3g,wifi我都已經測試過,暫時手上 沒有電信的卡,所以沒有驗證,有電信手機的同事,可以驗證一下,驗證後將結果 傳送給大家。connectivitymanager connectmgr connec...
Android網路型別判斷 2g 3g wifi
判斷網路型別是wifi,還是3g,還是2g網路,對不同 的網路進行不同的處理,現將判斷方法整理給大家,以供參考 說明 下面用到的資料移動2g,聯通2g,聯通3g,wifi我都已經測試過,暫時手上 沒有電信的卡,所以沒有驗證,有電信手機的同事,可以驗證一下,驗證後將結果 傳送給大家。connectiv...