Android判断网线连接
生活随笔
收集整理的這篇文章主要介紹了
Android判断网线连接
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
前言
Android tv 上通常會判斷當前網絡是有線連接還是無線連接,那么可以通過 Android 的廣播來通知網絡連接狀態。
源碼
廣播監聽
import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.net.NetworkInfo; import android.net.ConnectivityManager;public class NetWorkReceiver extends BroadcastReceiver{public int NET_ETHERNET = 1;public int NET_WIFI = 2;public int NET_NOCONNECT = 0;@Overridepublic void onReceive(Context context, Intent intent) {String action = intent.getAction();if (action.equals(ConnectivityManager.CONNECTIVITY_ACTION)|| action.equals("android.net.conn.CONNECTIVITY_CHANGE")) {switch (isNetworkAvailable(context)) {case 1:System.out.println("-----------networktest---------有線");break;case 2:System.out.println("-----------networktest---------無線");break;case 0:System.out.println("-----------networktest---------無網絡");break;default:break;}}private int isNetworkAvailable(Context context) {ConnectivityManager connectMgr = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);NetworkInfo ethNetInfo = connectMgr.getNetworkInfo(ConnectivityManager.TYPE_ETHERNET);NetworkInfo wifiNetInfo = connectMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);if (ethNetInfo != null && ethNetInfo.isConnected()) {return NET_ETHERNET;} else if (wifiNetInfo != null && wifiNetInfo.isConnected()) {return NET_WIFI;} else {return NET_NOCONNECT;}} }靜態注冊廣播
在 AndroidManifest.xml中注冊廣播
<!--靜態注冊廣播 --><receiver android:name=".WifiReceiver" android:enabled="true" android:exported="true"><intent-filter><action android:name="android.net.wifi.STATE_CHANGE"/><action android:name="android.Net.wifi.WIFI_STATE_CHANGED"/><action android:name="android.net.conn.CONNECTIVITY_CHANGE"/></intent-filter></receiver>本文參考http://blog.csdn.net/nation_chen/article/details/15813639
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的Android判断网线连接的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: QML Camera 摄像头拍照(带滑动
- 下一篇: Qt 加载QML 文件的几种方式