Android中判斷有無可用網絡的代碼(是否是3G或者WIFI網絡)
更新時間:2013年01月21日 12:09:49 作者:
在android開發(fā)中經常會遇到的判斷有無可用網絡的代碼,防止客戶流量損失
復制代碼 代碼如下:
ConnectivityManager mConnectivity = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
TelephonyManager mTelephony = (TelephonyManager)this.getSystemService(TELEPHONY_SERVICE);
//檢查網絡連接,如果無網絡可用,就不需要進行連網操作等
NetworkInfo info = mConnectivity.getActiveNetworkInfo();
if (info == null || !mConnectivity.getBackgroundDataSetting()) {
return false;
}
//判斷網絡連接類型,只有在3G或wifi里進行一些數據更新。
int netType = info.getType();
int netSubtype = info.getSubtype();
if (netType == ConnectivityManager.TYPE_WIFI) {
return info.isConnected();
} else if (netType == ConnectivityManager.TYPE_MOBILE
&& netSubtype == TelephonyManager.NETWORK_TYPE_UMTS
&& !mTelephony.isNetworkRoaming()) {
return info.isConnected();
} else {
return false;
}
別忘了在 AndroidManifest.xml 中加上 檢查網絡的權限
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
您可能感興趣的文章:
相關文章
Android socket如何實現文件列表動態(tài)訪問
本文介紹Android socket實現文件列表動態(tài)訪問,訪問文件夾之后通過listview展示,并在點擊文件夾后進入文件夾,獲得其內容,有此需求的朋友可以參考下2021-06-06
Android中CountDownTimer 實現倒計時功能
本篇文章主要介紹了Android中CountDownTimer 實現倒計時功能,CountDownTimer 是android 自帶的一個倒計時類,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-05-05
深入解析Android App的LayoutInflate布局
這篇文章主要介紹了Android App的LayoutInflate布局,對LayoutInflate編寫中經常被無解及產生錯誤的地方進行了深入說明,需要的朋友可以參考下2016-04-04

