JLChen
2020-03-16 7a951ecdc084ea8643e29e1ade59c1877fd7fbe5
app/src/main/java/com/hdl/sdk/hdl_sdk/activity/FreshAirActivity.java
@@ -1,6 +1,7 @@
package com.hdl.sdk.hdl_sdk.activity;
import android.app.ProgressDialog;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
@@ -34,6 +35,8 @@
    private int airSpeedState;
    private int ctrlId;
    private ProgressDialog proDialog;
    /**
     * 要注册使用EventBus,这里要设置返回true
     *
@@ -61,6 +64,8 @@
    @Override
    protected void onDestroy() {
        super.onDestroy();
        proDialog.dismiss();
        HDLLog.I("onDestroy: FreshAirActivity");
    }
    private void initcurState() {
@@ -73,7 +78,10 @@
        btn_speed = findViewById(com.hdl.sdk.hdl_sdk.R.id.btn_speed);
        btn_mode = findViewById(com.hdl.sdk.hdl_sdk.R.id.btn_mode);
        proDialog = new ProgressDialog(this);
        proDialog.setTitle("正在发送控制命令...");
        proDialog.setMessage("请耐心等待");
        proDialog.onStart();
    }
    private void initClickOnEvent() {
@@ -81,6 +89,7 @@
        btn_switch.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                proDialog.show();
                ctrlId = FreshAirParser.freshAirSwich;
                //演示当前状态为关,设置为开。开,设置为关。
                if (airSwitchState == 0) {
@@ -97,6 +106,7 @@
        btn_speed.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                proDialog.show();
                ctrlId = FreshAirParser.freshAirSpeed;
                switch (airSpeedState) {
                    case 0:
@@ -130,6 +140,7 @@
        btn_mode.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                proDialog.show();
                ctrlId = FreshAirParser.freshAirMode;
                switch (airModeState) {
                    case 0:
@@ -142,7 +153,7 @@
                        break;
                    case 2:
                        //若当前模式智能,则点击按钮设置为定时
                        HDLCommand.freshAirCtrl(appliancesInfo, FreshAirParser.freshAirMode, FreshAirParser.freshAirModeAuto);
                        HDLCommand.freshAirCtrl(appliancesInfo, FreshAirParser.freshAirMode, FreshAirParser.freshAirModeTiming);
                        break;
                    case 3:
                        //若当前模式定时,则点击按钮设置为手动
@@ -218,13 +229,14 @@
    @Subscribe(threadMode = ThreadMode.MAIN)
    public void onFreshAirFeedBackEventMain(FreshAirFeedBackEvent event) {
        proDialog.dismiss();
        if (event.getFreshAirBackInfo().getAppliancesInfo().getDeviceDeviceID() == appliancesInfo.getDeviceDeviceID()
                && event.getFreshAirBackInfo().getAppliancesInfo().getDeviceSubnetID() == appliancesInfo.getDeviceSubnetID()
                && event.getFreshAirBackInfo().getAppliancesInfo().getChannelNum() == appliancesInfo.getChannelNum()
        ) {
            //先判断是否超时
            if (!event.isSuccess()) {
                showToast("空调控制超时,请重新再试");
                showToast("新风控制超时,请重新再试");
                return;
            }
@@ -245,12 +257,14 @@
            }
            //*********根据需求显示*********
            message += "\n" + "室内温度:" + mFreshAirBackInfo.getInTemp();
            message += "\n" + "室外温度:" + mFreshAirBackInfo.getOutTemp();
            message += "\n" + "室内湿度:" + mFreshAirBackInfo.getHumidty();
            message += "\n" + "PM2.5:" + mFreshAirBackInfo.getInTemp();
            message += "\n" + "TVOC:" + mFreshAirBackInfo.getInTemp();
            message += "\n" + "CO2:" + mFreshAirBackInfo.getInTemp();
            //*********根据需求显示*********
            mTextView.setText(message);
            showToast(message);
@@ -260,6 +274,7 @@
    @Subscribe(threadMode = ThreadMode.MAIN)
    public void onDeviceStateEventMain(DeviceStateEvent event) {
        proDialog.dismiss();
        if (event.getAppliancesInfo().getDeviceSubnetID() == appliancesInfo.getDeviceSubnetID()
                && event.getAppliancesInfo().getDeviceDeviceID() == appliancesInfo.getDeviceDeviceID()
        ) {
@@ -278,15 +293,20 @@
                            return;
                        }
                        message += "\n" + getSwichStateString(mFreshAirBackInfo.getIsOn());
                        message += "\n" + getSpeedStateString(mFreshAirBackInfo.getFreshAirSpeed());
                        message += "\n" + getModeStateString(mFreshAirBackInfo.getFreshAirMode());
                        message += "\n" + "室内温度:" + mFreshAirBackInfo.getInTemp();
                        message += "\n" + "室外温度:" + mFreshAirBackInfo.getOutTemp();
                        message += "\n" + "室内湿度:" + mFreshAirBackInfo.getHumidty();
                        message += "\n" + "PM2.5:" + mFreshAirBackInfo.getInTemp();
                        message += "\n" + "TVOC:" + mFreshAirBackInfo.getInTemp();
                        message += "\n" + "CO2:" + mFreshAirBackInfo.getInTemp();
                        if(mFreshAirBackInfo.getIsOn() == FreshAirParser.freshAirOn) {
                            message = getSwichStateString(mFreshAirBackInfo.getIsOn());
                            message += "\n" + getSpeedStateString(mFreshAirBackInfo.getFreshAirSpeed());
                            message += "\n" + getModeStateString(mFreshAirBackInfo.getFreshAirMode());
                            message += "\n" + "室内温度:" + mFreshAirBackInfo.getInTemp();
                            message += "\n" + "室外温度:" + mFreshAirBackInfo.getOutTemp();
                            message += "\n" + "室内湿度:" + mFreshAirBackInfo.getHumidty();
                            message += "\n" + "PM2.5:" + mFreshAirBackInfo.getInTemp();
                            message += "\n" + "TVOC:" + mFreshAirBackInfo.getInTemp();
                            message += "\n" + "CO2:" + mFreshAirBackInfo.getInTemp();
                        }else {
                            message = getSwichStateString(mFreshAirBackInfo.getIsOn());
                        }
                        mTextView.setText(message);
                        showToast(message);
@@ -335,16 +355,16 @@
        airSpeedState = mState; //更新当前风速状态
        switch (mState) {
            case FreshAirParser.freshAirSpeedOff:
                mStrState = " 风速:关";
                mStrState = "风速:关";
                break;
            case FreshAirParser.freshAirSpeedLow:
                mStrState = " 风速:低";
                mStrState = "风速:低";
                break;
            case FreshAirParser.freshAirSpeedMid:
                mStrState = " 风速:中";
                mStrState = "风速:中";
                break;
            case FreshAirParser.freshAirSpeedHigh:
                mStrState = " 风速:高";
                mStrState = "风速:高";
                break;
            default:
@@ -365,16 +385,16 @@
        airModeState = mState;  //更新模式状态
        switch (mState) {
            case FreshAirParser.freshAirModeManual:
                mStrState = " 模式:手动";
                mStrState = "模式:手动";
                break;
            case FreshAirParser.freshAirModeAuto:
                mStrState = " 模式:自动";
                mStrState = "模式:自动";
                break;
            case FreshAirParser.freshAirModeIntelligent:
                mStrState = " 模式:智能";
                mStrState = "模式:智能";
                break;
            case FreshAirParser.freshAirModeTiming:
                mStrState = " 模式:定时";
                mStrState = "模式:定时";
                break;
            default: