Android檢測網路狀態,判斷當前網路是否可用
阿新 • • 發佈:2019-01-24
使用者手機當前網路可用:WIFI、2G/3G網路,使用者開啟與不開啟網路,和是否可以用是兩碼事。可以使用指的是:使用者開啟網路了並且可以連上網際網路進行上網。
檢測當前網路是否可用,程式碼如下:
/** * 檢測當的網路(WLAN、3G/2G)狀態 * @param context Context * @return true 表示網路可用 */ public static boolean isNetworkAvailable(Context context) { ConnectivityManager connectivity = (ConnectivityManager) context .getSystemService(Context.CONNECTIVITY_SERVICE); if (connectivity != null) { NetworkInfo info = connectivity.getActiveNetworkInfo(); if (info != null && info.isConnected()) { // 當前網路是連線的 if (info.getState() == NetworkInfo.State.CONNECTED) { // 當前所連線的網路可用 return true; } } } return false; }
在AndroidManifest.xml檔案新增的許可權:
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>