国产探花免费观看_亚洲丰满少妇自慰呻吟_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;}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 肥西县| 仲巴县| 苍山县| 辽阳县| 彭阳县| 安新县| 贡觉县| 德兴市| 安顺市| 襄汾县| 武陟县| 上林县| 南溪县| 柏乡县| 五台县| 宁强县| 忻州市| 筠连县| 榆树市| 革吉县| 延吉市| 西乌| 古蔺县| 五华县| 简阳市| 民乐县| 阿拉善盟| 明光市| 崇文区| 手游| 吉林市| 曲阳县| 龙山县| 平阴县| 定襄县| 吉安市| 三台县| 留坝县| 神池县| 伊金霍洛旗| 河池市|