首先,要想獲得當前android設備是否處于聯網狀態,那么android本身給我們提供了一個服務。
private ConnectivityManager connectivityManager;//用于判斷是否有網絡 connectivityManager = (ConnectivityManager) getActivity().getSystemService(Context.CONNECTIVITY_SERVICE);//獲取當前網絡的連接服務 NetworkInfo info = connectivityManager.getActiveNetworkInfo(); //獲取活動的網絡連接信息
首先我們得先拿到android的網絡服務,需要往配置文件里面加入一個權限。
<!-- 獲取用戶的手機是否聯網的信息 -->
uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
然后我們通過Context.getSystemService(Context.CONNECTIVITY_SERVICE)拿到系統的服務。
然后我們用android提供給我們的這個NetworkInfo類去盛放系統返回給我們網絡服務信息。
if (info == null) { //當前沒有已激活的網絡連接(表示用戶關閉了數據流量服務,也沒有開啟WiFi等別的數據服務) Toast.makeText(getActivity(), "檢查網絡連接是否打開", Toast.LENGTH_SHORT).show(); } else { //當前有已激活的網絡連接 } 當然,我們也可以用這局代碼來判斷我們的網絡連接是否可用。來返回是否有效,如果為True則表示當前Android手機已經聯網,可能是WiFi或GPRS、HSDPA等等。具體的可以通過ConnectivityManager 類的getActiveNetworkInfo() 方法判斷詳細的接入方式
connectivityManager.getActiveNetworkInfo().isAvailable();
以上就對Android Service 判斷聯網狀態的資料整理,后續繼續補充相關資料,謝謝大家對本站的支持。
新聞熱點
疑難解答