首先,要想获得当前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 判断联网状态的资料整理,后续继续补充相关资料,谢谢大家对本站的支持。