记录一个最近项目上使用系统方法判断网络是否碰到的坑。
一般项目都会有公共的方法然后使用观察者模式给业务提供接口监听网络,因为公司是老项目,监听网络的方式是注册广播。
具体的实现方式如下(在这里简单实现一下)
首先是自定一个接口
public interface NetListener {
void onNetworkChanged(int type);
}
public class DeviceStatusDispatch {
private final Context mContext;
private static volatile DeviceStatusDispatch mInstance;
private final Receiver mReciver;
private ArrayList<NetListener> mListeners;
public static DeviceStatusDispatch getInstance(Context context){
if(mInstance == null){
synchronized(DeviceStatusDispatch.this){
if(mInstance