1. 程式人生 > >獲取當前網路狀態(是否可用) ,nullpoint處理

獲取當前網路狀態(是否可用) ,nullpoint處理

/** 
* 獲取當前網路狀態(是否可用) 
*/  
public static boolean isNetworkAvailable() {  
    ConnectivityManager connManager = (ConnectivityManager) BaseApplication.getApplication().getSystemService(Context.CONNECTIVITY_SERVICE);  
    if (connManager != null) {  
        /** 
        * 獲取網路資訊實體 
        * 由於從系統服務中獲取資料屬於程序間通訊,基本型別外的資料必須實現Parcelable介面, 
        * NetworkInfo實現了Parcelable,獲取到的activeNetInfo相當於服務中網路資訊實體物件的一個副本(拷貝), 
        * 所以,不管系統網路服務中的實體物件是否置為了null,此處獲得的activeNetInfo均不會發生變化 
        */  
        NetworkInfo activeNetInfo = connManager.getActiveNetworkInfo();  
        if (activeNetInfo != null) {  
            return activeNetInfo.isAvailable();  
        }  
    }  
    return  false;