Android check internet connection 檢查網路連線狀態

之前有一篇是寫到iphone檢查網路連線狀態,現在很多的app都會需要用上網路,所以檢查是否能夠連線就變成相當重要的部份。

首先需要在"AndroidManifest.xml"這個建立專案時就產生出來的檔案內加上下面這兩行,第一行為讓app可以順利的使用網路存取資料,第二行為開放檢查網路狀態
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />


詳細位置可以參考下圖


接著在class內加上這function
//check internet connetion
public boolean checkInternetConnection(){
ConnectivityManager cm=(ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo ni=cm.getActiveNetworkInfo();
if(ni!=null && ni.isConnected()){
// System.out.println("ni.isConnected() = "+ni.isConnected());
return ni.isConnected();
}else{
// System.out.println("ni.isConnected() = "+ni.isConnected());
return false;
}
}


可以參考下圖,就把這function放在Activity內即可


最後需要檢查網路狀態就使用下列方式即可,回應為true就是有連線,false為沒連線
if(checkInternetConnection()){
//TODO something
}


可參考圖片



相關連結
Android Developers
Android Developers - NetworkInfo

沒有留言:

張貼留言