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

首頁 > 系統 > Android > 正文

Android 判斷是否有外網連接

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

Android里判斷是否可以上網,常用的是如下方法:

/** * 檢測網絡是否連接 *  * @return */private boolean isNetworkAvailable() {  // 得到網絡連接信息  ConnectivityManager manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);  // 去進行判斷網絡是否連接  if (manager.getActiveNetworkInfo() != null) {    return manager.getActiveNetworkInfo().isAvailable();  }  return false;}

有時候我們連接上一個沒有外網連接的WiFi或者有線就會出現這種極端的情況,目前Android SDK還不能識別這種情況,一般的解決辦法就是ping一個外網。

/* @author suncat * @category 判斷是否有外網連接(普通方法不能判斷外網的網絡是否連接,比如連接上局域網) * @return */ public static final boolean ping() {   String result = null;   try {       String ip = "www.baidu.com";// ping 的地址,可以換成任何一種可靠的外網       Process p = Runtime.getRuntime().exec("ping -c 3 -w 100 " + ip);// ping網址3次       // 讀取ping的內容,可以不加       InputStream input = p.getInputStream();       BufferedReader in = new BufferedReader(new InputStreamReader(input));       StringBuffer stringBuffer = new StringBuffer();       String content = "";       while ((content = in.readLine()) != null) {           stringBuffer.append(content);       }       Log.d("------ping-----", "result content : " + stringBuffer.toString());       // ping的狀態       int status = p.waitFor();       if (status == 0) {           result = "success";           return true;       } else {           result = "failed";       }   } catch (IOException e) {       result = "IOException";   } catch (InterruptedException e) {       result = "InterruptedException";   } finally {       Log.d("----result---", "result = " + result);   }   return false;}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 沙湾县| 普安县| 南召县| 达州市| 青川县| 长乐市| 昌都县| 湖南省| 综艺| 杂多县| 福海县| 格尔木市| 滕州市| 厦门市| 双辽市| 邛崃市| 安康市| 长武县| 鄄城县| 织金县| 泊头市| 三河市| 封开县| 金山区| 柳河县| 浪卡子县| 玉屏| 香港 | 澎湖县| 湟源县| 介休市| 腾冲县| 贵州省| 汉中市| 古田县| 佛冈县| 塔河县| 乌兰浩特市| 正镶白旗| 赤水市| 阳江市|