添加网络权限

<uses-permission android:name="android.permission.INTERNET"/>
public class NetUtil {
    /**
     * 无网络
     */
    public static final int NETWORK_NONE = -1;

    /**
     * 移动网络
     */
    public static final int NETWORK_MOBILE = 0;

    /**
     * WIFI
     */
    public static final int NETWORK_WIFI = 1;

    public static final int NETWORK_ETHERNET = 2;

    /**
     * 获取当前网络状态
     * @param context
     * @return
     */
    public static int getNetworkState(Context context){
        ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        NetworkInfo info = connectivityManager.getActiveNetworkInfo();
        if (info != null && info.isConnected()){
            if (info.getType() == ConnectivityManager.TYPE_MOBILE){
                return NETWORK_MOBILE;
            }else if (info.getType() == ConnectivityManager.TYPE_WIFI){
                return NETWORK_WIFI;
            }else if (info.getType() == ConnectivityManager.TYPE_ETHERNET){
                return NETWORK_ETHERNET;
            }
        }else{
            return NETWORK_NONE;
        }
        return NETWORK_NONE;
    }
}
public class NetChangeReceiver extends BroadcastReceiver {
    private static final String TAG = "NetChangeReceiver";
    private final NetWorkListener mListener;

    public NetChangeReceiver(NetWorkListener listener) {
        mListener = listener;
    }

    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction() != null && intent.getAction().equals(ConnectivityManager.CONNECTIVITY_ACTION)){
            int netWorkState = NetUtil.getNetworkState(context);
            Log.d(TAG, "oinReceive: 网络状态有变化," + netWorkState);
            if (mListener != null){
                mListener.onNetWorkChange(netWorkState);
            }
        }
    }

    public interface NetWorkListener {
        void onNetWorkChange(int state);
    }

}
public class MainActivity extends AppCompatActivity  implements NetChangeReceiver.NetWorkListener{
    private NetChangeReceiver mReceiver = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initReceiver();
    }

    private void initReceiver() {
        mReceiver = new NetChangeReceiver(this);
        IntentFilter filter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);
        registerReceiver(mReceiver, filter);
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        unregisterReceiver(mReceiver);
    }

    @Override
    public void onNetWorkChange(int state) {
        if (state >= NetUtil.NETWORK_MOBILE) {
            //有网操作
        } else {
            //无网操作
        }
    }
}