管灌系统巡查员智能手机App
app/src/main/java/com/dayu/pipirrapp/activity/MainActivity.java
@@ -1,10 +1,13 @@
package com.dayu.pipirrapp.activity;
import android.net.ConnectivityManager;
import android.net.Network;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.content.ContextCompat;
import androidx.fragment.app.Fragment;
@@ -19,6 +22,9 @@
import com.dayu.pipirrapp.fragment.MapFragment;
import com.dayu.pipirrapp.fragment.MyFragment;
import com.dayu.pipirrapp.net.MqttManager;
import com.dayu.pipirrapp.tool.InspectionUtils;
import com.dayu.pipirrapp.utils.MyLog;
import com.dayu.pipirrapp.utils.NetUtils;
import java.util.ArrayList;
import java.util.List;
@@ -41,13 +47,17 @@
        super.onCreate(savedInstanceState);
        binding = ActivityMainBinding.inflate(LayoutInflater.from(this));
        setContentView(binding.getRoot());
        registNetCallBack();
        setupFragments();
        initView();
        initTab();
        try {
        TagBean tagBean = DaoSingleton.getInstance(this).tagDao().findFirst();
        MyApplication.myApplication.myTag = tagBean.getTag();
        } catch (Exception e) {
            e.printStackTrace();
        }
        mqttManager = new MqttManager(this);
        mqttManager.connect();
    }
@@ -90,7 +100,12 @@
    protected void onDestroy() {
        super.onDestroy();
        //关闭MQ
        try {
        mqttManager.disconnect();
            unregisterNetworkCallback();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    /**
@@ -145,4 +160,36 @@
        binding.myImg.setImageDrawable(ContextCompat.getDrawable(this, R.drawable.bottom_my_black));
        binding.myText.setTextColor(ContextCompat.getColor(this, R.color.black));
    }
    //    注册网络监控
    private void registNetCallBack() {
        NetUtils.registerNetCallBack(this, networkCallback);
    }
    private void unregisterNetworkCallback() {
        NetUtils.unregisterReceiver(this, networkCallback);
    }
    //网络监控
    ConnectivityManager.NetworkCallback networkCallback = new ConnectivityManager.NetworkCallback() {
        @Override
        public void onAvailable(@NonNull Network network) {
            super.onAvailable(network);
            // 这里可以执行网络可用后的逻辑,比如进行数据请求等
            MyLog.d("onAvailable");
            InspectionUtils.aginPutInspectionData(MainActivity.this);
        }
        @Override
        public void onLost(@NonNull Network network) {
            super.onLost(network);
            // 这里可以执行网络丢失后的逻辑,比如停止数据请求等
            MyLog.d("onLost");
        }
    };
}