一、网络判断
```xml
```xml
```java
public class NetUtil {
private static final int NETWORK_NONE=0; //没有网络
private static final int NETWORK_MOBILE=1;//移动网络
private static final int NETWORW_WIFI=2; //无线网络
private static final String TAG="无线网工具类";
public static int getNetWorkStart(Context context){
ConnectivityManager connectivityManager = (ConnectivityManager)
context.getSystemService(Context.CONNECTIVITY_SERVICE); //连接服务 CONNECTIVITY_SERVICE
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo(); //网络信息 NetworkInfo
if (activeNetworkInfo!=null&&activeNetworkInfo.isConnected()){
//判断是否是wifi
if (activeNetworkInfo.getType()==(ConnectivityManager.TYPE_WIFI)){
Log.d(TAG,"正在使用无线网");
return NETWORW_WIFI;//返回无线网络
}else if (activeNetworkInfo.getType()==(ConnectivityManager.TYPE_MOBILE)){
Log.d(TAG,"正在使用移动网");
return NETWORK_MOBILE;
}
}else {
Log.d(TAG,"没有网络");
return NETWORK_NONE;
}
//默认返回 没有网络
Log.d(TAG,"默认没有网络");
return NETWORK_NONE;
}
}
直接使用即可NetUtil.getNetWorkStart(content)
二、网络实时监听(在碎片中)
(如果在活动中使用去掉getActivity即可)
1:一个内部类继承广播
class NetworkChange extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager connectivityManager = (ConnectivityManager) getActivity().getSystemService(context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
if(networkInfo!= null && networkInfo.isAvailable()){
Toast.makeText(context,"有网络了",Toast.LENGTH_SHORT).show();
}else {
Toast.makeText(context,"无网络了",Toast.LENGTH_SHORT).show();
}
}
}
2:定义全局
```java
public IntentFilter intentfile;
public NetworkChange network;
3:在onCreateView中加入 广播注册
intentfile = new IntentFilter();
intentfile.addAction(“android.net.conn.CONNECTIVITY_CHANGE”);
network = new NetworkChange();
getActivity().registerReceiver(network, intentfile);
4:在onDestroy中取消广播注册
getActivity().unregisterReceiver(network);