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

首頁 > 系統 > Android > 正文

Android中監聽判斷網絡連接狀態的方法

2020-04-11 11:49:23
字體:
來源:轉載
供稿:網友

在無網或網速差的狀態下,沒必要去連接服務器。
你可以使用 ConnectivityManager 來判斷是否連到網絡,以及網絡類型。

判斷是否有網絡連接

下面的代碼用ConnectivityManager查詢是活動網絡連接判斷是否有Internet連接。

復制代碼 代碼如下:

ConnectivityManager cm =
        (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);
 
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
boolean isConnected = activeNetwork != null &&
                      activeNetwork.isConnectedOrConnecting();

判斷Internet連接類型

連接類型可能是移動數據,WiMax,WIFI,以太網。可以通過類似下面的方法查詢網絡類型:

復制代碼 代碼如下:
boolean isWiFi = activeNetwork.getType() == ConnectivityManager.TYPE_WIFI;

移動數據比WIFI耗電,應該注意。下載大文件應該延遲到有wifi以后。

監聽連接改變

ConnectivityManager會在連接改變時發送廣播”android.net.conn.CONNECTIVITY_CHANGE”,所以,注冊,監聽一下這個廣播就可以:

復制代碼 代碼如下:
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>

每次從移動數據和WIFI間改變時都會觸發,這個改變可能會很頻繁。最好是只有當你之前暫停下載或更新的時候,才去監聽這個廣播。通常在下載或更新前先檢查一次網絡連接。
下節講切換開關在manifest里聲明的接收器.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 湛江市| 屏东市| 育儿| 信宜市| 象州县| 浦东新区| 松江区| 嘉祥县| 攀枝花市| 略阳县| 军事| 手游| 平阳县| 沧源| 紫云| 通山县| 行唐县| 广昌县| 江都市| 贺兰县| 肇东市| 县级市| 会昌县| 乐平市| 元谋县| 乐东| 竹山县| 龙里县| 肃北| 长顺县| 京山县| 五峰| 靖边县| 仁怀市| 鹤壁市| 宁都县| 仁布县| 称多县| 温宿县| 博湖县| 赞皇县|