在Android平臺下提供瞭很全面的網絡接口,獲取手機設置的網絡接入方式更是不在話下瞭,所以開發以來很方便。
Activity提供瞭獲取網絡管理類的接口ConnectivityManager,用ConnectivityManager就可獲取網絡信息類NetworkInfo,NetworkInfo包含瞭很多網絡狀況的信息。如下代碼實例:
//獲取網絡連接管理者
ConnectivityManager connectionManager = (ConnectivityManager)
getSystemService(CONNECTIVITY_SERVICE);
//獲取網絡的狀態信息,有下面三種方式
NetworkInfo networkInfo = connectionManager.getActiveNetworkInfo();
NetworkInfo 有一下方法
getDetailedState():獲取詳細狀態。
getExtraInfo():獲取附加信息。
getReason():獲取連接失敗的原因。
getType():獲取網絡類型(一般為移動或Wi-Fi)。
getTypeName():獲取網絡類型名稱(一般取值“WIFI”或“MOBILE”)。
isAvailable():判斷該網絡是否可用。
isConnected():判斷是否已經連接。
isConnectedOrConnecting():判斷是否已經連接或正在連接。
isFailover():判斷是否連接失敗。
isRoaming():判斷是否漫遊
當用wifi上的時候
getType 是WIFI
getExtraInfo是空的當用手機上的時候
getType 是MOBILE
用移動CMNET方式
getExtraInfo 的值是cmnet
用移動CMWAP方式
getExtraInfo 的值是cmwap 但是不在代理的情況下訪問普通的網站訪問不瞭
用聯通3gwap方式
getExtraInfo 的值是3gwap
用聯通3gnet方式
getExtraInfo 的值是3gnet
用聯通uniwap方式
getExtraInfo 的值是uniwap
用聯通uninet方式
getExtraInfo 的值是uninet
用電信方式待定
下面解決cmwap聯網
作者 劉亞飛