欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android中判断有无可用网络的代码(是否是3G或者WIFI网络)

程序员文章站 2023-12-01 08:18:04
复制代码 代码如下: connectivitymanager mconnectivity = (connectivitymanager)getsystemservice(c...
复制代码 代码如下:

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"/>