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

Android編程判斷網(wǎng)絡(luò)連接是否可用的方法

 更新時間:2015年12月16日 14:34:35   作者:天使之翼  
這篇文章主要介紹了Android編程判斷網(wǎng)絡(luò)連接是否可用的方法,實例分析了Android判定網(wǎng)絡(luò)連接的相關(guān)技巧與實現(xiàn)步驟,需要的朋友可以參考下

本文實例講述了Android編程判斷網(wǎng)絡(luò)連接是否可用的方法。分享給大家供大家參考,具體如下:

為了提高用戶體驗,我們在開發(fā) android 應(yīng)用的過程需要聯(lián)網(wǎng)獲取數(shù)據(jù)的時候我們首先要做的一步就是:

1.判斷當(dāng)前手機(jī)是否打開了網(wǎng)絡(luò)

2.打開了網(wǎng)絡(luò)是否可以上網(wǎng)

然后再去執(zhí)行聯(lián)網(wǎng)邏輯,避免沒聯(lián)網(wǎng)做不必要的工作!

通常情況下,我們是這樣判斷的

public static boolean isNetAvailable(Context context) { 
  ConnectivityManager connectManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);  
  return (connectManager.getActiveNetworkInfo() != null); 
} 

但是這樣只完成了第一步,判斷網(wǎng)絡(luò)是否打開,

注意:打開并不代表就可以上網(wǎng),

觀察發(fā)現(xiàn) NetworkInfo 有一個方法:

復(fù)制代碼 代碼如下:
NetworkInfo.isAvailable()

官方的解釋是

Indicates whether network connectivity is possible. A network is unavailable when a persistent or semi-persistent condition prevents the possibility of connecting to that network. Examples include  
The device is out of the coverage area for any network of this type.  
The device is on a network other than the home network (i.e., roaming), and data roaming has been disabled.  
The device's radio is turned off, e.g., because airplane mode is enabled.  
Returns: 
true if the network is available, false otherwise 

他列舉了幾種網(wǎng)絡(luò)已連接但不可以上網(wǎng)的情況,

所以我們這樣改改就好了:

public static boolean isNetAvailable(Context context) {
  ConnectivityManager manager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
  NetworkInfo info = manager.getActiveNetworkInfo();
  return (info != null && info.isAvailable());
}

希望本文所述對大家Android程序設(shè)計有所幫助。

相關(guān)文章

最新評論