国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

安卓各種網絡判斷與處理

2019-11-09 18:53:02
字體:
來源:轉載
供稿:網友

                                                                 安卓各種網絡判斷與處理

在安卓開發中,許多地方需要根據網絡狀態進行各種功能邏輯的實現,因此我在這里總結一下安卓各種網絡狀態的獲取、判斷以及根據有無網絡進行相應的邏輯處理:

1.判斷是否有網絡連接:

public boolean isNetworkConnected(Context context) {       if (context != null) {           ConnectivityManager mConnectivityManager = (ConnectivityManager) context                   .getSystemService(Context.CONNECTIVITY_SERVICE);           NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo();           if (mNetworkInfo != null) {               return mNetworkInfo.isAvailable();           }       }       return false;  

 }

2.判斷WiFi網絡是否可用

public boolean isWifiConnected(Context context) {       if (context != null) {           ConnectivityManager mConnectivityManager = (ConnectivityManager) context                   .getSystemService(Context.CONNECTIVITY_SERVICE);           NetworkInfo mWiFiNetworkInfo = mConnectivityManager                   .getNetworkInfo(ConnectivityManager.TYPE_WIFI);           if (mWiFiNetworkInfo != null) {               return mWiFiNetworkInfo.isAvailable();           }       }       return false;   }

3.判斷mobile網絡是否可用

public boolean isMobileConnected(Context context) {       if (context != null) {           ConnectivityManager mConnectivityManager = (ConnectivityManager) context                   .getSystemService(Context.CONNECTIVITY_SERVICE);           NetworkInfo mMobileNetworkInfo = mConnectivityManager                   .getNetworkInfo(ConnectivityManager.TYPE_MOBILE);           if (mMobileNetworkInfo != null) {               return mMobileNetworkInfo.isAvailable();           }       }       return false;   }

4.獲取當前網絡連接的類型信息

public static int getConnectedType(Context context) {       if (context != null) {           ConnectivityManager mConnectivityManager = (ConnectivityManager) context                   .getSystemService(Context.CONNECTIVITY_SERVICE);           NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo();           if (mNetworkInfo != null && mNetworkInfo.isAvailable()) {               return mNetworkInfo.getType();           }       }       return -1;   }

在android應用開發時,涉及到要進行網絡訪問,經常需要進行網絡狀態的檢查,以提供給用戶必要的提醒。一般可以通過ConnectivityManager來完成該工作。

ConnectivityManager有四個主要任務:

1、監聽手機網絡狀態(包括GPRS,WIFI, UMTS等)

2、手機狀態發生改變時,發送廣播

3、當一個網絡連接失敗時進行故障切換

4、為應用程序提供可以獲取可用網絡的高精度和粗糙的狀態


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 类乌齐县| 静乐县| 离岛区| 定结县| 博客| 鹤山市| 台东县| 友谊县| 西乡县| 昌平区| 鄂伦春自治旗| 北安市| 黄石市| 简阳市| 杂多县| 绥德县| 灌云县| 镇赉县| 通海县| 义乌市| 紫阳县| 绥宁县| 安丘市| 惠来县| 沾化县| 博客| 五华县| 信丰县| 通州区| 黑山县| 扎鲁特旗| 五指山市| 富顺县| 应城市| 河南省| 乃东县| 杭锦旗| 大关县| 肇庆市| 南召县| 从江县|