欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android中判斷網(wǎng)絡(luò)連接狀態(tài)的方法

 更新時(shí)間:2016年02月13日 16:27:39   投稿:lijiao  
App判斷用戶(hù)是否聯(lián)網(wǎng)是很普遍的需求,這篇文章主要介紹了Android中判斷網(wǎng)絡(luò)連接狀態(tài)的方法,感興趣的朋友可以參考一下

App判斷用戶(hù)是否聯(lián)網(wǎng)是很普遍的需求,實(shí)現(xiàn)思路大概有下面幾種

  • 利用Android自帶的ConnectivityManager類(lèi)
  • 有時(shí)候連上了wifi,但這個(gè)wifi是上不了網(wǎng)的,我們可以通過(guò)ping www.baidu.com來(lái)判斷是否可以上網(wǎng)
  • 也可以利用get請(qǐng)求訪問(wèn)www.baidu.com,如果get請(qǐng)求成功,說(shuō)明可以上網(wǎng)

1、判斷網(wǎng)絡(luò)是否已經(jīng)連接

// check all network connect, WIFI or mobile
public static boolean isNetworkAvailable(final Context context) {
  boolean hasWifoCon = false;
  boolean hasMobileCon = false;
 
  ConnectivityManager cm = (ConnectivityManager) context.getSystemService(context.CONNECTIVITY_SERVICE);
  NetworkInfo[] netInfos = cm.getAllNetworkInfo();
  for (NetworkInfo net : netInfos) {
 
    String type = net.getTypeName();
    if (type.equalsIgnoreCase("WIFI")) {
      LevelLogUtils.getInstance().i(tag, "get Wifi connection");
      if (net.isConnected()) {
        hasWifoCon = true;
      }
    }
 
    if (type.equalsIgnoreCase("MOBILE")) {
      LevelLogUtils.getInstance().i(tag, "get Mobile connection");
      if (net.isConnected()) {
        hasMobileCon = true;
      }
    }
  }
  return hasWifoCon || hasMobileCon;
 
}

2、利用 ping 判斷 Internet 能夠 請(qǐng)求成功
Note:有時(shí)候連上了網(wǎng)絡(luò), 但卻上不去外網(wǎng)

// network available cannot ensure Internet is available
public static boolean isNetWorkAvailable(final Context context) {
  Runtime runtime = Runtime.getRuntime();
  try {
    Process pingProcess = runtime.exec("/system/bin/ping -c 1 www.baidu.com");
    int exitCode = pingProcess.waitFor();
    return (exitCode == 0);
  } catch (Exception e) {
    e.printStackTrace();
  }
  return false;
}

考慮到網(wǎng)絡(luò), 我們 ping 了www.baidu.com
國(guó)外的話(huà)可以 ping 8.8.8.8

3、其他方案 模擬 get 請(qǐng)求

也可以訪問(wèn)網(wǎng)址, 看 get 請(qǐng)求能不能成功

URL url = new URL("http://www.google.com");
HttpURLConnection urlc = (HttpURLConnection) url.openConnection();
urlc.setConnectTimeout(3000);
urlc.connect();
if (urlc.getResponseCode() == 200) {
  return new Boolean(true);
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家學(xué)習(xí)Android軟件編程有所幫助。

相關(guān)文章

  • Android強(qiáng)制下線功能實(shí)現(xiàn)的代碼示例

    Android強(qiáng)制下線功能實(shí)現(xiàn)的代碼示例

    本篇文章主要介紹了Android強(qiáng)制下線功能實(shí)現(xiàn)的代碼示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • Android繪制動(dòng)態(tài)折線圖

    Android繪制動(dòng)態(tài)折線圖

    這篇文章主要為大家詳細(xì)介紹了Android繪制動(dòng)態(tài)折線圖,折線圖隨著手指的滑動(dòng)進(jìn)行動(dòng)態(tài)繪制效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • Android實(shí)現(xiàn)掃描和生成二維碼

    Android實(shí)現(xiàn)掃描和生成二維碼

    這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)掃描和生成二維碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-05-05
  • 安裝時(shí)加入外部數(shù)據(jù)庫(kù)示例(android外部數(shù)據(jù)庫(kù))

    安裝時(shí)加入外部數(shù)據(jù)庫(kù)示例(android外部數(shù)據(jù)庫(kù))

    這篇文章主要介紹了android打包安裝時(shí)加入外部數(shù)據(jù)庫(kù)的示例,需要的朋友可以參考下
    2014-03-03
  • Input系統(tǒng)截?cái)嗖呗缘姆治雠c應(yīng)用詳解

    Input系統(tǒng)截?cái)嗖呗缘姆治雠c應(yīng)用詳解

    這篇文章主要為大家介紹了Input系統(tǒng)截?cái)嗖呗缘姆治雠c應(yīng)用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • android生命周期深入分析(二)

    android生命周期深入分析(二)

    Android 程序的生命周期是由系統(tǒng)控制而非程序自身直接控制。這和我們編寫(xiě)桌面應(yīng)用程序時(shí)的思維有一些不同,本文將詳細(xì)介紹,需要了解的朋友可以參考下
    2012-12-12
  • Android中Volley框架下保持會(huì)話(huà)方法

    Android中Volley框架下保持會(huì)話(huà)方法

    這個(gè)是基于session的一個(gè)網(wǎng)絡(luò)會(huì)話(huà),手機(jī)app給服務(wù)器發(fā)送登陸請(qǐng)求的時(shí)候,服務(wù)器返回的網(wǎng)絡(luò)response(networkRespone)的頭(head)里面存放著你想要的sessionid。這篇文章主要介紹了Android中Volley框架下保持會(huì)話(huà)方法的相關(guān)資料,需要的朋友可以參考下
    2016-11-11
  • Android開(kāi)源項(xiàng)目PullToRefresh下拉刷新功能詳解2

    Android開(kāi)源項(xiàng)目PullToRefresh下拉刷新功能詳解2

    這篇文章主要為大家進(jìn)一步的介紹了Android開(kāi)源項(xiàng)目PullToRefresh下拉刷新功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • Android webview轉(zhuǎn)PDF的方法示例

    Android webview轉(zhuǎn)PDF的方法示例

    本篇文章主要介紹了Android webview轉(zhuǎn)PDF的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-01-01
  • Android中AOP(面向切向編程)的深入講解

    Android中AOP(面向切向編程)的深入講解

    這篇文章主要給大家介紹了關(guān)于Android中AOP(面向切向編程)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-09-09

最新評(píng)論