From 498c442cd1be3a53364b42660a8eee9ffe34051a Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期二, 10 八月 2021 11:26:13 +0800 Subject: [PATCH] 2021-08-10 1. --- app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirActivity.java | 755 +++++++++++++++++++++++++++++++++++++ app/src/main/res/layout/activity_ctrl_air.xml | 145 +++++++ app/src/main/AndroidManifest.xml | 2 app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java | 2 hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLUdpCore.java | 61 -- app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirHVACActivity.java | 131 +++--- hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java | 47 +- 7 files changed, 994 insertions(+), 149 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 07313b4..ff8a3bf 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -39,7 +39,7 @@ <activity android:name=".activity.CtrlSecurityActivity" /> <activity android:name=".activity.SensorActivity" /> <activity android:name=".activity.CtrlAirHVACActivity" /> - + <activity android:name=".activity.CtrlAirActivity" /> <receiver android:name=".activity.BootComplete"> <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> diff --git a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java index e7bfeeb..4e7f997 100644 --- a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java +++ b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/AppliancesActivity.java @@ -84,7 +84,7 @@ if(appliancesInfos.get(position).getDeviceType() == HDLApConfig.TYPE_AC_HVAC){ intent.setClass(AppliancesActivity.this, CtrlAirHVACActivity.class); }else { - intent.setClass(AppliancesActivity.this, CtrlActivity.class); + intent.setClass(AppliancesActivity.this, CtrlAirActivity.class); } } diff --git a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirActivity.java b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirActivity.java new file mode 100644 index 0000000..847948a --- /dev/null +++ b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirActivity.java @@ -0,0 +1,755 @@ +package com.hdl.sdk.hdl_sdk.activity; + + +import android.os.Bundle; +import android.text.TextUtils; +import android.view.View; +import android.widget.Button; +import android.widget.EditText; +import android.widget.RelativeLayout; +import android.widget.TextView; + + +import com.hdl.sdk.hdl_core.HDLAppliances.Config.HDLApConfig; +import com.hdl.sdk.hdl_core.HDLAppliances.HDLAirCondition.Parser.AirCtrlParser; +import com.hdl.sdk.hdl_core.HDLDeviceManger.Bean.AppliancesInfo; +import com.hdl.sdk.hdl_core.HDLDeviceManger.Core.HDLCommand; +import com.hdl.sdk.hdl_core.HDLDeviceManger.EventBusEvent.AirFeedBackEvent; +import com.hdl.sdk.hdl_core.HDLDeviceManger.EventBusEvent.DeviceStateEvent; +import com.hdl.sdk.hdl_sdk.R; +import com.hdl.sdk.hdl_sdk.base.BaseActivity; +import com.hdl.sdk.hdl_sdk.utlis.HDLLog; + +import org.greenrobot.eventbus.Subscribe; +import org.greenrobot.eventbus.ThreadMode; + + +/** + * Created by JLChen on 2019/7/4 + * 绌鸿皟绫绘ā鍧楁帶鍒堕〉闈� + * PANEL 绫诲瀷绌鸿皟妯″潡 + * 16~30鎽勬皬搴�(鈩�) + */ +public class CtrlAirActivity extends BaseActivity { +// /**Topbar*/ +// private RelativeLayout topBarBack; +// private TextView topBarTitle; + + private Button airBtnSwitch, airBtnMode, airBtnTemp, airBtnSpeed; + private TextView airText; + private TextView tv_switch, tv_mode, tv_speed, tv_tempet; + private EditText airTempEd; + private AppliancesInfo appliancesInfo; + + + private int airSwitchState;//Demo浠呬互姝や綔涓烘紨绀猴紝瀹為檯璇锋牴鎹渶姹傚紑鍙戣璁� + private int airModeState; + private int airTempState; + private int airSpeedState; +// /** +// * true涓鸿缃憚姘忓害 false涓鸿缃崕姘忓害 +// * 鍙傛暟鑼冨洿 16~30鎽勬皬搴�(鈩�) +// * ~86鍗庢皬搴�(鈩�) +// */ +// private boolean bCelsius = true; + + /** + * 澶嶅啓isRegisterEventBus() 瑕佹敞鍐屼娇鐢‥ventBus锛岃繖閲岃璁剧疆杩斿洖true + * + * @return true + */ + @Override + protected boolean isRegisterEventBus() { + return true; + } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_ctrl_air); + initToolbar(); + initView(); + initOnClick(); + initcurState(); + displayStateView(); + +// if(appliancesInfo.getDeviceType() == HDLApConfig.TYPE_AC_HVAC) { +// HDLCommand.getHVACDeviceStateFromNetwork(appliancesInfo); +// } +// //浠庢湰鍦拌幏鍙栫┖璋冮潰鏉跨姸鎬� +// HDLCommand.getDeviceStateFromLocal(appliancesInfo); + } + + + + /** + * 鍒濆鍖朤oolbar + */ + private void initToolbar() { +// topBarBack = findViewById(R.id.ll_top_b_left); +// setViewVisible(topBarBack); +// topBarTitle = findViewById(R.id.tv_top_b_header_title); +// topBarBack.setOnClickListener(new View.OnClickListener() { +// @Override +// public void onClick(View view) { +// finish(); +// } +// }); + } + + private void initcurState() { + appliancesInfo = (AppliancesInfo) getIntent().getSerializableExtra("hdl"); + String titleStr = appliancesInfo.getRemarks(); +// topBarTitle.setText(titleStr); + } + + private void displayStateView(){ + switch (appliancesInfo.getDeviceType()) { +// case HDLApConfig.TYPE_AC_HVAC: + case HDLApConfig.TYPE_AC_PANEL: + loadDeviceData(); + break; + default: + finish();//璁惧绫诲瀷涓嶅缁撴潫椤甸潰 + break; + } + /**鏍规嵁闇�姹傛槸鍚﹀彂閫佷竴娆¤幏鍙栧埛鏂扮姸鎬佽姹�*/ + } + + private void initView() { + airBtnSwitch = findViewById(R.id.airbtn_switch); + airBtnMode = findViewById(R.id.airbtn_mode); + airBtnSpeed = findViewById(R.id.airbtn_speed); + airBtnTemp = findViewById(R.id.airbtn_tempBtn); + airTempEd = findViewById(R.id.airet_tempet); + airText = findViewById(R.id.airText); + + tv_switch = findViewById(R.id.tv_switch); + tv_mode = findViewById(R.id.tv_mode); + tv_speed = findViewById(R.id.tv_speed); + tv_tempet = findViewById(R.id.tv_tempet); + } + + private void initOnClick() { + airBtnSwitch.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + //婕旂ず褰撳墠鐘舵�佷负鍏筹紝璁剧疆涓哄紑銆傚紑锛岃缃负鍏炽�� + if (airSwitchState == 0) { + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSwich, AirCtrlParser.airOn);//绌鸿皟寮� + } else { + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSwich, AirCtrlParser.airOff);//绌鸿皟鍏� + } + } + }); + + + airBtnMode.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + switch (airModeState) { + case 0: + //鑻ュ綋鍓嶇┖璋冩ā寮忎负鍒跺喎锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓哄埗鐑� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeHeatTem);//绌鸿皟妯″紡鍒剁儹 + break; + case 1: + //鑻ュ綋鍓嶇┖璋冩ā寮忎负鍒剁儹锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓洪�氶 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeVen);//绌鸿皟妯″紡閫氶 + break; + case 2: + //鑻ュ綋鍓嶇┖璋冩ā寮忎负閫氶锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓鸿嚜鍔� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeAuto);//绌鸿皟妯″紡鑷姩 + break; + case 3: + //鑻ュ綋鍓嶇┖璋冩ā寮忎负鑷姩锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓烘娊婀� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeDehum);//绌鸿皟妯″紡鎶芥箍 + break; + case 4: + //鑻ュ綋鍓嶇┖璋冩ā寮忎负鎶芥箍锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓哄埗鍐� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeRefTem);//绌鸿皟妯″紡鍒跺喎 + break; + default: + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeRefTem);//绌鸿皟妯″紡鍒跺喎 + break; + + } + + + } + }); + + airBtnSpeed.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + switch (airSpeedState) { + case 0: + //鑻ュ綋鍓嶇┖璋冮閫熶负鑷姩锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓洪珮椋� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedHigh);//椋庨�熼珮椋� + break; + case 1: + //鑻ュ綋鍓嶇┖璋冮閫熶负楂橀锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓轰腑椋� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedMid);//椋庨�熶腑椋� + break; + case 2: + //鑻ュ綋鍓嶇┖璋冮閫熶负涓锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓轰綆椋� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedLow);//椋庨�熶綆椋� + break; + case 3: + //鑻ュ綋鍓嶇┖璋冮閫熶负浣庨锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓鸿嚜鍔� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedAuto);//椋庨�熻嚜鍔� + break; + + + } + } + }); + + airBtnTemp.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + String tempStr = airTempEd.getText().toString(); + if (TextUtils.isEmpty(tempStr)) { + showToast("璁剧疆鐨勬俯搴︿笉鑳戒负绌�"); + return; + } + int tempInt = Integer.parseInt(tempStr); + + if (tempInt < 16 || tempInt > 30) { + showToast("娓╁害璁剧疆鑼冨洿涓猴細16~30鎽勬皬搴�(鈩�)"); + return; + } + + switch (airModeState) { + case 0: + //褰撳墠绌鸿皟妯″紡涓哄埗鍐� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.refTem, tempInt);//鍒跺喎娓╁害 + break; + case 1: + //褰撳墠绌鸿皟妯″紡涓哄埗鐑� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.heatTem, tempInt);//鍒剁儹娓╁害 + break; + case 2: + //褰撳墠绌鸿皟妯″紡涓洪�氶 + showToast("閫氶妯″紡涓嶈兘鎺у埗娓╁害"); + break; + case 3: + //褰撳墠绌鸿皟妯″紡涓鸿嚜鍔� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.autoTem, tempInt);//鑷姩娓╁害 鑼冨洿16-30 + break; + case 4: + //褰撳墠绌鸿皟妯″紡涓烘娊婀� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.dehumTem, tempInt);//鎶芥箍娓╁害 鑼冨洿16-30 + break; + default: + break; + + } + +// HDLCommand.airCtrl(appliancesInfo,AirCtrlParser.upTem,1);//涓婂崌娓╁害 鑼冨洿0-5 +// HDLCommand.airCtrl(appliancesInfo,AirCtrlParser.downTem,1);//涓嬮檷娓╁害 鑼冨洿0-5 + } + }); + + + } + + + private void loadDeviceData() { + if (appliancesInfo.getArrCurState() != null) { + String stringACState = ""; + byte[] acCurState = appliancesInfo.getArrCurState(); + for (int index = 0; index < acCurState.length; index++) { + if (index == 0 && acCurState[index] == 0) { + airSwitchState = 0; + stringACState += "绌鸿皟宸插叧闂�"; + //濡傛灉绌鸿皟鍏抽棴鐘舵�侊紝鍒欐棤闇�鍐嶉亶鍘� + break; + } + if (index == 0 && acCurState[index] == 1) { + airSwitchState = 1; + stringACState += "绌鸿皟姝e湪杩愯"; + } + + switch (index) { + + case 1: + switch (acCurState[index]) { + case 0: + airModeState = 0; + stringACState += " 绌鸿皟妯″紡:鍒跺喎"; + break; + case 1: + airModeState = 1; + stringACState += " 绌鸿皟妯″紡:鍒剁儹"; + break; + case 2: + airModeState = 2; + stringACState += " 绌鸿皟妯″紡:閫氶"; + break; + case 3: + airModeState = 3; + stringACState += " 绌鸿皟妯″紡:鑷姩"; + break; + case 4: + airModeState = 4; + stringACState += " 绌鸿皟妯″紡:鎶芥箍"; + break; + default: + airModeState = -1; + stringACState += " 鏈煡绌鸿皟妯″紡"; + break; + } + break; + case 2: + switch (acCurState[1]) { + case 0: + airTempState = acCurState[index] & 0xff; + stringACState += " 鍒跺喎娓╁害锛�" + (acCurState[index] & 0xff); + break; + case 1: + airTempState = acCurState[index] & 0xff; + stringACState += " 鍒剁儹娓╁害锛�" + (acCurState[index] & 0xff); + break; + case 2: + airTempState = -1; + stringACState += " 閫氶鏃犳俯搴︽樉绀�"; + break; + case 3: + airTempState = acCurState[index] & 0xff; + stringACState += " 鑷姩娓╁害锛�" + (acCurState[index] & 0xff); + break; + case 4: + airTempState = acCurState[index] & 0xff; + stringACState += " 鎶芥箍娓╁害锛�" + (acCurState[index] & 0xff); + break; + default: + airTempState = -2; + stringACState += " 鏈煡娓╁害"; + break; + } + break; + case 3: + String curSpeed; + switch (appliancesInfo.getArrCurState()[index]) { + case 0: + airSpeedState = 0; + curSpeed = " 椋庨�熻嚜鍔�"; + break; + case 1: + airSpeedState = 1; + curSpeed = " 椋庨�熼珮"; + break; + case 2: + airSpeedState = 2; + curSpeed = " 椋庨�熶腑"; + break; + case 3: + airSpeedState = 3; + curSpeed = " 椋庨�熶綆"; + break; + default: + airSpeedState = -1; + curSpeed = " 鏈煡椋庨��"; + break; + } + switch (appliancesInfo.getArrCurState()[1]) { + case 0: + stringACState += curSpeed; + break; + case 1: + stringACState += curSpeed; + break; + case 2: + stringACState += curSpeed; + break; + case 3: + stringACState += curSpeed; + break; + case 4: + stringACState += " 鎶芥箍鏃犻閫�"; + break; + default: + stringACState += " 鏈煡绌鸿皟妯″紡"; + break; + } + break; + + default: + break; + } + } + + airText.setText(stringACState); + } else { + airText.setText("鏈幏鍙栧埌绌鸿皟璁惧鐘舵��"); + } + + } + + /** + * 绌鸿皟妯″潡鎺у埗鍥炶皟Event + * + * @param event + */ + @Subscribe(threadMode = ThreadMode.MAIN) + public void onAirFeedBackInfoEventMain(AirFeedBackEvent event) { + if (event.getAirCtrlBackInfo().getAppliancesInfo().getDeviceDeviceID() == appliancesInfo.getDeviceDeviceID() + && event.getAirCtrlBackInfo().getAppliancesInfo().getDeviceSubnetID() == appliancesInfo.getDeviceSubnetID() + && event.getAirCtrlBackInfo().getAppliancesInfo().getChannelNum() == appliancesInfo.getChannelNum() + ) { + // 鍏堝垽鏂槸鍚﹁秴鏃� + if (!event.isSuccess()) { + showToast("绌鸿皟鎺у埗瓒呮椂锛岃閲嶆柊鍐嶈瘯"); + return; + } + String mes = ""; + byte[] curState = event.getAirCtrlBackInfo().getCurState(); + readAirState(curState); + } + } + + /** + * 鑾峰彇鍗曚竴璁惧鐘舵�佸洖璋僂vent + * + * @param event + */ + @Subscribe(threadMode = ThreadMode.MAIN) + public void onDeviceStateEventMain(DeviceStateEvent event) { + if (event.getAppliancesInfo().getDeviceSubnetID() == appliancesInfo.getDeviceSubnetID() + && event.getAppliancesInfo().getDeviceDeviceID() == appliancesInfo.getDeviceDeviceID() + ) { + //杩欎釜杩斿洖鐨勪俊鎭槸褰撳墠鐘舵�佺殑 + switch (event.getAppliancesInfo().getDeviceType()) { +// case HDLApConfig.TYPE_AC_HVAC: + case HDLApConfig.TYPE_AC_PANEL: + if (appliancesInfo.getChannelNum() == event.getAppliancesInfo().getChannelNum()) { + if (!event.isSuccess()) { + showToast("鑾峰彇绌鸿皟鐘舵�佸け璐ワ紝璇烽噸鏂板啀璇�"); + return; + } + + byte[] curState = event.getAppliancesInfo().getArrCurState(); + + readAirState(curState); +// switch (curState[0] & 0xFF) { +// case AirCtrlParser.airSwich: +// switch (curState[1] & 0xFF) { +// case AirCtrlParser.airOff: +// airSwitchState = 0; +// airText.setText("绌鸿皟鍏�"); +// showToast("绌鸿皟鍏�"); +// HDLLog.I("绌鸿皟鍏�"); +// break; +// case AirCtrlParser.airOn: +// airSwitchState = 1; +// airText.setText("绌鸿皟寮�"); +// showToast("绌鸿皟寮�"); +// HDLLog.I("绌鸿皟寮�"); +// break; +// default: +// break; +// } +// +// break; +// +// case AirCtrlParser.airSpeed: +// switch (curState[1] & 0xFF) { +// case AirCtrlParser.airSpeedAuto: +// airSpeedState = 0; +// airText.setText("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedAuto鑷姩椋庨��"); +// showToast("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedAuto鑷姩椋庨��"); +// HDLLog.I("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedAuto鑷姩椋庨��"); +// break; +// case AirCtrlParser.airSpeedHigh: +// airSpeedState = 1; +// airText.setText("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedHigh椋庨�熼珮"); +// showToast("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedHigh椋庨�熼珮"); +// HDLLog.I("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedHigh椋庨�熼珮"); +// break; +// case AirCtrlParser.airSpeedMid: +// airSpeedState = 2; +// airText.setText("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedMid椋庨�熶腑"); +// showToast("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedMid椋庨�熶腑"); +// HDLLog.I("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedMid椋庨�熶腑"); +// break; +// case AirCtrlParser.airSpeedLow: +// airSpeedState = 3; +// airText.setText("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedLow椋庨�熶綆"); +// showToast("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedLow椋庨�熶綆"); +// HDLLog.I("绌鸿皟椋庨�燂紝椋庨�熸ā寮忎负锛歛irSpeedLow椋庨�熶綆"); +// break; +// default: +// break; +// } +// break; +// case AirCtrlParser.airMode: +// switch (curState[1] & 0xFF) { +// case AirCtrlParser.airModeRefTem: +// airModeState = 0; +// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鍐�"); +// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鍐�"); +// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鍐�"); +// break; +// case AirCtrlParser.airModeHeatTem: +// airModeState = 1; +// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鐑�"); +// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鐑�"); +// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氬埗鐑�"); +// break; +// case AirCtrlParser.airModeVen: +// airModeState = 2; +// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氶�氶"); +// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氶�氶"); +// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氶�氶"); +// break; +// case AirCtrlParser.airModeAuto: +// airModeState = 3; +// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氳嚜鍔�"); +// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氳嚜鍔�"); +// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氳嚜鍔�"); +// break; +// case AirCtrlParser.airModeDehum: +// airModeState = 4; +// airText.setText("绌鸿皟妯″紡锛屾ā寮忎负锛氭娊婀�"); +// showToast("绌鸿皟妯″紡锛屾ā寮忎负锛氭娊婀�"); +// HDLLog.I("绌鸿皟妯″紡锛屾ā寮忎负锛氭娊婀�"); +// break; +// default: +// break; +// } +// break; +// case AirCtrlParser.refTem: +// airTempState = curState[1] & 0xFF; +// airText.setText("绌鸿皟鍒跺喎锛屾俯搴︿负锛�" + (curState[1] & 0xFF)); +// showToast("绌鸿皟鍒跺喎锛屾俯搴︿负锛�" + (curState[1] & 0xFF)); +// HDLLog.I("绌鸿皟鍒跺喎锛屾俯搴︿负锛�" + (curState[1] & 0xFF)); +// break; +// case AirCtrlParser.heatTem: +// airTempState = curState[1] & 0xFF; +// airText.setText("绌鸿皟鍒剁儹锛屽埗鐑俯搴︿负" + (curState[1] & 0xFF)); +// showToast("绌鸿皟鍒剁儹锛屽埗鐑俯搴︿负" + (curState[1] & 0xFF)); +// HDLLog.I("绌鸿皟鍒剁儹锛屽埗鐑俯搴︿负" + (curState[1] & 0xFF)); +// break; +// case AirCtrlParser.autoTem: +// airTempState = curState[1] & 0xFF; +// airText.setText("绌鸿皟鑷姩锛岃嚜鍔ㄦ俯搴︿负" + (curState[1] & 0xFF)); +// showToast("绌鸿皟鑷姩锛岃嚜鍔ㄦ俯搴︿负" + (curState[1] & 0xFF)); +// HDLLog.I("绌鸿皟鑷姩锛岃嚜鍔ㄦ俯搴︿负" + (curState[1] & 0xFF)); +// break; +// case AirCtrlParser.dehumTem: +// airTempState = curState[1] & 0xFF; +// airText.setText("绌鸿皟鎶芥箍锛屾娊婀挎俯搴︿负" + (curState[1] & 0xFF)); +// showToast("绌鸿皟鎶芥箍锛屾娊婀挎俯搴︿负" + (curState[1] & 0xFF)); +// HDLLog.I("绌鸿皟鎶芥箍锛屾娊婀挎俯搴︿负" + (curState[1] & 0xFF)); +// break; +// case AirCtrlParser.upTem: +// airTempState = curState[1] & 0xFF; +// airText.setText("绌鸿皟璋冩俯锛屼笂鍗囨俯搴︼細" + (curState[1] & 0xFF)); +// showToast("绌鸿皟璋冩俯锛屼笂鍗囨俯搴︼細" + (curState[1] & 0xFF)); +// HDLLog.I("绌鸿皟璋冩俯锛屼笂鍗囨俯搴︼細" + (curState[1] & 0xFF)); +// break; +// case AirCtrlParser.downTem: +// airTempState = curState[1] & 0xFF; +// airText.setText("绌鸿皟璋冩俯锛屼笅闄嶆俯搴︼細" + (curState[1] & 0xFF)); +// showToast("绌鸿皟璋冩俯锛屼笅闄嶆俯搴︼細" + (curState[1] & 0xFF)); +// HDLLog.I("绌鸿皟璋冩俯锛屼笅闄嶆俯搴︼細" + (curState[1] & 0xFF)); +// break; +// } + } + break; + default: + //涓嶅鐞� + break; + } + } + } + + private void readAirState( byte[] curState ){ + String mes = ""; + switch (curState[0] & 0xFF) { + case AirCtrlParser.airSwich: + switch (curState[1] & 0xFF) { + case AirCtrlParser.airOff: + airSwitchState = 0; + + tv_switch.setText("鍏�"); + + mes = "绌鸿皟鍏�"; + tv_mesSetText(mes); + HDLLog.I(mes); + break; + case AirCtrlParser.airOn: + airSwitchState = 1; +// airText.setText("绌鸿皟寮�"); +// showToast("绌鸿皟寮�"); +// HDLLog.I("绌鸿皟寮�"); + tv_switch.setText("寮�"); + + mes = "绌鸿皟寮�"; + tv_mesSetText(mes); + HDLLog.I(mes); + break; + default: + break; + } + + break; + + case AirCtrlParser.airSpeed: + switch (curState[1] & 0xFF) { + case AirCtrlParser.airSpeedAuto: + airSpeedState = 0; + tv_speed.setText("鑷姩"); + + mes = "鑷姩椋庨��"; + tv_mesSetText(mes); + HDLLog.I(mes); + + break; + case AirCtrlParser.airSpeedHigh: + airSpeedState = 1; + + tv_speed.setText("楂橀��"); + mes = "椋庨�熼珮"; + tv_mesSetText(mes); + HDLLog.I(mes); + break; + case AirCtrlParser.airSpeedMid: + airSpeedState = 2; + tv_speed.setText("涓��"); + mes = "椋庨�熶腑"; + tv_mesSetText(mes); + HDLLog.I(mes); + + break; + case AirCtrlParser.airSpeedLow: + airSpeedState = 3; + + tv_speed.setText("浣庨��"); + mes = "椋庨�熶綆"; + tv_mesSetText(mes); + HDLLog.I(mes); + + break; + default: + break; + } + break; + case AirCtrlParser.airMode: + switch (curState[1] & 0xFF) { + case AirCtrlParser.airModeRefTem: + airModeState = 0; + + tv_mode.setText("鍒跺喎"); + + mes = "妯″紡涓猴細鍒跺喎"; + tv_mesSetText(mes); + HDLLog.I(mes); + + break; + case AirCtrlParser.airModeHeatTem: + airModeState = 1; + tv_mode.setText("鍒剁儹"); + + mes = "妯″紡涓猴細鍒剁儹"; + tv_mesSetText(mes); + HDLLog.I(mes); + break; + case AirCtrlParser.airModeVen: + airModeState = 2; + tv_mode.setText("閫氶"); + + mes = "妯″紡涓猴細閫氶"; + tv_mesSetText(mes); + HDLLog.I(mes); + break; + case AirCtrlParser.airModeAuto: + airModeState = 3; + tv_mode.setText("鑷姩"); + + mes = "妯″紡涓猴細鑷姩"; + tv_mesSetText(mes); + HDLLog.I(mes); + break; + case AirCtrlParser.airModeDehum: + airModeState = 4; + tv_mode.setText("鎶芥箍"); + + mes = "妯″紡涓猴細鎶芥箍"; + tv_mesSetText(mes); + HDLLog.I(mes); + break; + default: + airModeState = -1; + break; + } + break; + case AirCtrlParser.refTem: + airTempState = curState[1] & 0xFF; + + tv_tempet.setText("" + airTempState); + mes = "绌鸿皟鍒跺喎锛屾俯搴︿负锛�" + (airTempState); + + tv_mesSetText(mes); + HDLLog.I(mes); + + break; + case AirCtrlParser.heatTem: + airTempState = curState[1] & 0xFF; + tv_tempet.setText("" + airTempState); + mes = "绌鸿皟鍒剁儹锛屽埗鐑俯搴︿负锛�" + (airTempState); + + tv_mesSetText(mes); + HDLLog.I(mes); + + break; + case AirCtrlParser.autoTem: + airTempState = curState[1] & 0xFF; + + tv_tempet.setText(""+airTempState); + mes = "绌鸿皟鑷姩锛岃嚜鍔ㄦ俯搴︿负锛�" + (airTempState); + tv_mesSetText(mes); + HDLLog.I(mes); + break; + case AirCtrlParser.dehumTem: + airTempState = curState[1] & 0xFF; + + tv_tempet.setText("" + airTempState); + mes = "绌鸿皟鎶芥箍锛屾娊婀挎俯搴︿负锛�" + (airTempState); + tv_mesSetText(mes); + HDLLog.I(mes); + break; + case AirCtrlParser.upTem: + airTempState = curState[1] & 0xFF; + + + tv_tempet.setText("" + airTempState); + mes = "绌鸿皟璋冩俯锛屼笂鍗囨俯搴︼細" + (airTempState); + tv_mesSetText(mes); + HDLLog.I(mes); + break; + case AirCtrlParser.downTem: + airTempState = curState[1] & 0xFF; + tv_tempet.setText("" + airTempState); + mes = "绌鸿皟璋冩俯锛屼笅闄嶆俯搴︼細" + (airTempState); + tv_mesSetText(mes); + HDLLog.I(mes); + break; + + } + + } + + + + + /** + * TextView 鏄剧ず淇℃伅骞朵笖showToast鎻愮ず + * + * @param mes + */ + private void tv_mesSetText(String mes) { + airText.setText(mes); + showToast(mes); + } +} diff --git a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirHVACActivity.java b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirHVACActivity.java index a4ce08d..7b31ec0 100644 --- a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirHVACActivity.java +++ b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlAirHVACActivity.java @@ -78,7 +78,6 @@ } - /** * 鍒濆鍖朤oolbar */ @@ -99,7 +98,6 @@ String titleStr = appliancesInfo.getRemarks(); } - private void initView() { @@ -163,73 +161,71 @@ airBtnSpeed.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - HDLCommand.airCtrl(appliancesInfo,AirCtrlParser.downTem,1);//涓婂崌娓╁害 鑼冨洿0-5 - return; -// switch (airSpeedState) { -// case 0: -// //鑻ュ綋鍓嶇┖璋冮閫熶负鑷姩锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓洪珮椋� -// HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedHigh);//椋庨�熼珮椋� -// break; -// case 1: -// //鑻ュ綋鍓嶇┖璋冮閫熶负楂橀锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓轰腑椋� -// HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedMid);//椋庨�熶腑椋� -// break; -// case 2: -// //鑻ュ綋鍓嶇┖璋冮閫熶负涓锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓轰綆椋� -// HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedLow);//椋庨�熶綆椋� -// break; -// case 3: -// //鑻ュ綋鍓嶇┖璋冮閫熶负浣庨锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓鸿嚜鍔� -// HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedAuto);//椋庨�熻嚜鍔� -// break; -// -// -// } + + switch (airSpeedState) { + case 0: + //鑻ュ綋鍓嶇┖璋冮閫熶负鑷姩锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓洪珮椋� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedHigh);//椋庨�熼珮椋� + break; + case 1: + //鑻ュ綋鍓嶇┖璋冮閫熶负楂橀锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓轰腑椋� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedMid);//椋庨�熶腑椋� + break; + case 2: + //鑻ュ綋鍓嶇┖璋冮閫熶负涓锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓轰綆椋� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedLow);//椋庨�熶綆椋� + break; + case 3: + //鑻ュ綋鍓嶇┖璋冮閫熶负浣庨锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓鸿嚜鍔� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedAuto);//椋庨�熻嚜鍔� + break; + + + } } }); airBtnTemp.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - HDLCommand.airCtrl(appliancesInfo,AirCtrlParser.upTem,1);//涓婂崌娓╁害 鑼冨洿0-5 - return; -// String tempStr = airTempEd.getText().toString(); -// if (TextUtils.isEmpty(tempStr)) { -// showToast("璁剧疆鐨勬俯搴︿笉鑳戒负绌�"); -// return; -// } -// int tempInt = Integer.parseInt(tempStr); -// -// if (tempInt < 16 || tempInt > 30) { -// showToast("娓╁害璁剧疆鑼冨洿涓猴細16~30鎽勬皬搴�(鈩�)"); -// return; -// } -// -// switch (airModeState) { -// case 0: -// //褰撳墠绌鸿皟妯″紡涓哄埗鍐� -// HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.refTem, tempInt);//鍒跺喎娓╁害 -// break; -// case 1: -// //褰撳墠绌鸿皟妯″紡涓哄埗鐑� -// HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.heatTem, tempInt);//鍒剁儹娓╁害 -// break; -// case 2: -// //褰撳墠绌鸿皟妯″紡涓洪�氶 -// showToast("閫氶妯″紡涓嶈兘鎺у埗娓╁害"); -// break; -// case 3: -// //褰撳墠绌鸿皟妯″紡涓鸿嚜鍔� -// HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.autoTem, tempInt);//鑷姩娓╁害 鑼冨洿16-30 -// break; -// case 4: -// //褰撳墠绌鸿皟妯″紡涓烘娊婀� -// HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.dehumTem, tempInt);//鎶芥箍娓╁害 鑼冨洿16-30 -// break; -// default: -// break; -// -// } + + String tempStr = airTempEd.getText().toString(); + if (TextUtils.isEmpty(tempStr)) { + showToast("璁剧疆鐨勬俯搴︿笉鑳戒负绌�"); + return; + } + int tempInt = Integer.parseInt(tempStr); + + if (tempInt < 16 || tempInt > 30) { + showToast("娓╁害璁剧疆鑼冨洿涓猴細16~30鎽勬皬搴�(鈩�)"); + return; + } + + switch (airModeState) { + case 0: + //褰撳墠绌鸿皟妯″紡涓哄埗鍐� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.refTem, tempInt);//鍒跺喎娓╁害 + break; + case 1: + //褰撳墠绌鸿皟妯″紡涓哄埗鐑� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.heatTem, tempInt);//鍒剁儹娓╁害 + break; + case 2: + //褰撳墠绌鸿皟妯″紡涓洪�氶 + showToast("閫氶妯″紡涓嶈兘鎺у埗娓╁害"); + break; + case 3: + //褰撳墠绌鸿皟妯″紡涓鸿嚜鍔� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.autoTem, tempInt);//鑷姩娓╁害 鑼冨洿16-30 + break; + case 4: + //褰撳墠绌鸿皟妯″紡涓烘娊婀� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.dehumTem, tempInt);//鎶芥箍娓╁害 鑼冨洿16-30 + break; + default: + break; + + } // HDLCommand.airCtrl(appliancesInfo,AirCtrlParser.upTem,1);//涓婂崌娓╁害 鑼冨洿0-5 // HDLCommand.airCtrl(appliancesInfo,AirCtrlParser.downTem,1);//涓嬮檷娓╁害 鑼冨洿0-5 @@ -354,9 +350,9 @@ } - private void showAirHVACBackInfo(AirHVACBackInfo mAirHVACBackInfo){ + private void showAirHVACBackInfo(AirHVACBackInfo mAirHVACBackInfo) { String message = ""; - if(mAirHVACBackInfo.getIsOn() == AirCtrlParser.airOn) { + if (mAirHVACBackInfo.getIsOn() == AirCtrlParser.airOn) { message = getSwichStateString(mAirHVACBackInfo.getIsOn()); message += "\n" + getModeStateString(mAirHVACBackInfo.getAirMode());//妯″紡 message += "\n" + getSpeedStateString(mAirHVACBackInfo.getAirSpeed());//椋庨�� @@ -365,7 +361,7 @@ message += "\n鍒剁儹妯″紡娓╁害锛�" + mAirHVACBackInfo.getHeatTemp(); message += "\n鑷姩妯″紡娓╁害锛�" + mAirHVACBackInfo.getAutoTemp(); message += "\n鎶芥箍妯″紡娓╁害锛�" + mAirHVACBackInfo.getWettedTemp(); - }else { + } else { message = getSwichStateString(mAirHVACBackInfo.getIsOn()); } airText.setText(message); @@ -373,8 +369,6 @@ HDLLog.I(message); } - - /** @@ -431,7 +425,6 @@ } } } - } diff --git a/app/src/main/res/layout/activity_ctrl_air.xml b/app/src/main/res/layout/activity_ctrl_air.xml new file mode 100644 index 0000000..b362174 --- /dev/null +++ b/app/src/main/res/layout/activity_ctrl_air.xml @@ -0,0 +1,145 @@ +<?xml version="1.0" encoding="utf-8"?> +<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:id="@+id/activity_ctrl" + android:layout_width="match_parent" + android:layout_height="match_parent"> + + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="match_parent" + android:layout_marginRight="20dp" + android:layout_marginLeft="20dp" + android:orientation="vertical"> + + + <TextView + android:layout_width="match_parent" + android:layout_height="40dp" + android:text="绌鸿皟闈㈡澘鍔熻兘绫绘ā鍧�" + android:gravity="center|left" + android:textSize="@dimen/ts_24" + /> + + <LinearLayout + android:id="@+id/air" + android:orientation="vertical" + android:layout_width="match_parent" + android:layout_height="wrap_content"> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="40dp"> + + <TextView + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="寮�鍏崇姸鎬侊細" /> + + <TextView + android:id="@+id/tv_switch" + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="" /> + </LinearLayout> + + <LinearLayout + android:layout_width="match_parent" + android:layout_height="40dp"> + + <TextView + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="绌鸿皟妯″紡锛�" /> + + <TextView + android:id="@+id/tv_mode" + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="" /> + </LinearLayout> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="40dp"> + + <TextView + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="椋庨�熺姸鎬侊細" /> + + <TextView + android:id="@+id/tv_speed" + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="" /> + </LinearLayout> + <LinearLayout + android:layout_width="match_parent" + android:layout_height="40dp"> + + <TextView + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="娓╁害鐘舵�侊細" /> + + <TextView + android:id="@+id/tv_tempet" + android:layout_width="80dp" + android:layout_height="match_parent" + android:gravity="center" + android:text="" /> + </LinearLayout> + + <TextView + android:id="@+id/airText" + android:textSize="@dimen/ts_20" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="杩欎釜鎸夐挳鍋氱┖璋冮潰鏉跨殑婕旂ず" /> + <Button + android:id="@+id/airbtn_switch" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="绌鸿皟寮�鍏�" /> + + + <Button + android:id="@+id/airbtn_mode" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="绌鸿皟妯″紡" /> + <Button + android:id="@+id/airbtn_speed" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="绌鸿皟椋庨��" /> + <LinearLayout + android:orientation="horizontal" + android:layout_width="match_parent" + android:layout_height="wrap_content"> + <Button + android:id="@+id/airbtn_tempBtn" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="鐐瑰嚮璁剧疆绌鸿皟娓╁害:" /> + <EditText + android:id="@+id/airet_tempet" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:inputType="number"/> + </LinearLayout> + + + + + </LinearLayout> + </LinearLayout> + +</RelativeLayout> \ No newline at end of file diff --git a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java index 3124f53..74d178f 100644 --- a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java +++ b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java @@ -3134,39 +3134,34 @@ * @param getDatas */ private static void handleHVACCtrlData(UdpDataBean getDatas) { - switch (getDatas.command) { - case Configuration.AIR_HVAC_CTRL_BACK_COMMAND: - outter: - for (int i = 0, len = devicesDataList.size(); i < len; i++) { - if (devicesDataList.get(i).getSourceSubnetID() == getDatas.sourceSubnetID - && devicesDataList.get(i).getSourceDeviceID() == getDatas.sourceDeviceID - ) { - List<AppliancesInfo> infos = devicesDataList.get(i).getAppliancesInfoList(); - for (int j = 0, len2 = infos.size(); j < len2; j++) { - if (getDatas.addBytes.length > 0) { - if (infos.get(j).getBigType() == Configuration.AIR_BIG_TYPE - && infos.get(j).getDeviceType() == HDLApConfig.TYPE_AC_HVAC - && infos.get(j).getChannelNum() == (getDatas.addBytes[0] & 0xFF)) { + outter: + for (int i = 0, len = devicesDataList.size(); i < len; i++) { + if (devicesDataList.get(i).getSourceSubnetID() == getDatas.sourceSubnetID + && devicesDataList.get(i).getSourceDeviceID() == getDatas.sourceDeviceID + ) { + List<AppliancesInfo> infos = devicesDataList.get(i).getAppliancesInfoList(); + for (int j = 0, len2 = infos.size(); j < len2; j++) { + if (getDatas.addBytes.length > 0) { + if (infos.get(j).getBigType() == Configuration.AIR_BIG_TYPE + && infos.get(j).getDeviceType() == HDLApConfig.TYPE_AC_HVAC + && infos.get(j).getChannelNum() == (getDatas.addBytes[0] & 0xFF)) { - devicesDataList.get(i).getAppliancesInfoList().get(j).setArrCurState(getDatas.addBytes); - AppliancesInfo mHvacAirInfo = devicesDataList.get(i).getAppliancesInfoList().get(j); - AirHVACBackInfo info = new AirHVACBackInfo(mHvacAirInfo); - setDeviceCtrlSuccessStateWithInfo(infos.get(j), true); - EventBus.getDefault().post(new AirHVACFeedBackEvent(info, true)); - break outter; - } + devicesDataList.get(i).getAppliancesInfoList().get(j).setArrCurState(getDatas.addBytes); + AppliancesInfo mHvacAirInfo = devicesDataList.get(i).getAppliancesInfoList().get(j); + AirHVACBackInfo info = new AirHVACBackInfo(mHvacAirInfo); + setDeviceCtrlSuccessStateWithInfo(infos.get(j), true); + EventBus.getDefault().post(new AirHVACFeedBackEvent(info, true)); + break outter; + } // else { // HDLLog.E("鎺у埗HVAC鐘舵�佸弽棣堟暟鎹紓甯�"); // } - } - } - - break outter; } } - break; - } + break outter; + } + } } /** diff --git a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLUdpCore.java b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLUdpCore.java index 5e732e9..b910026 100644 --- a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLUdpCore.java +++ b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLUdpCore.java @@ -419,58 +419,6 @@ } break; - case Configuration.DEVICES_SEARCH_COMMAND: //绠�鏄撶紪绋嬭澶囨悳绱㈡搷浣滅爜銆佽澶囪鍙栨搷浣滅爜 鍥炲 - case Configuration.ReadRemark: //000E 鎼滅储鍥炲 - case Configuration.READ_MAC_COMMAND: //F003 璇昏澶嘙ac - case Configuration.LIGHT_CTRL_BACK_COMMAND: - case Configuration.CURTAIN_CTRL_BACK_COMMAND: - case Configuration.AIR_CTRL_BACK_COMMAND: - case Configuration.LOGIC_CTRL_BACK_COMMAND: - case Configuration.LIGHT_STATE_BACK_COMMAND: - case Configuration.FRESH_AIR_CTRL_BACK_COMMAND://20190709鏂板 鏂伴绯荤粺 - case Configuration.FRESH_AIR_STATE_BACK_COMMAND://20190709鏂板 - case Configuration.GEOTHERMAL_MODULE_CTRL_BACK_COMMAND://20190709鏂板 鍦扮儹妯″潡 - case Configuration.GEOTHERMAL_MODULE_STATE_BACK_COMMAND://20190709鏂板 - case Configuration.COMMON_SWITCH_CTRL_BACK_COMMAND: //2020-06-23 閫氱敤寮�鍏� - case Configuration.COMMON_SWITCH_STATE_BACK_COMMAND: //2020-06-23 閫氱敤寮�鍏� - case Configuration.SECURITY_ARMING_CTRL_BACK_COMMAND://20190729瀹夐槻妯″潡 甯冮槻璁剧疆鍙嶉 - case Configuration.SECURITY_STATE_BACK_COMMAND://20190729 璇诲彇瀹夐槻璁剧疆鍙嶉 - case Configuration.SECURITY_ALARM_CTRL_BACK_COMMAND://20190729 鎶ヨ璁剧疆鍙嶉 - case Configuration.DRY_CONTACT_STATE_BACK_COMMAND: - case Configuration.DRY_CONTACT_BROADCAST_STATE_COMMAND://2020-06-23 澧炲姞骞叉帴鐐圭姸鎬佸洖澶� - case Configuration.LIGHT_RGB_CTRL_BACK_COMMAND://2020-10-19 澧炲姞RGB CCT鎺у埗鍥炲 - case Configuration.LIGHT_RGB_STATE_BACK_COMMAND://2020-10-19 澧炲姞RGB CCT鐘舵�佸洖澶� - - case Configuration.CURTAIN_STATE_BACK_COMMAND: - case Configuration.AIR_STATE_BACK_COMMAND: - - case Configuration.AIR_HVAC_CTRL_BACK_COMMAND: - case Configuration.AIR_HVAC_STATE_BACK_COMMAND: - case Configuration.RCU_ROOM_CAST_COMMAND: - case Configuration.RCU_CURTAIN_CAST_COMMAND: - - case Configuration.DEVICES_READ_BACK_COMMAND://璇诲彇澶囨敞鍛戒护 - - case Configuration.WARNING_COMMAND: - - case Configuration.SENSOR_STATE_BACK_COMMAND: - case Configuration.SENSOR_BROADCAST_COMMAND://2021-08-05 -// case Configuration.AUDIO_CTRL_READ_COMMAND: - case Configuration.AUDIO_CTRL_READ_BACK_COMMAND: -// case Configuration.AUDIO_MenuPlay_INSTRUCTION_COMMAND: - case Configuration.AUDIO_MenuPlay_INSTRUCTION_BACK_COMMAND: - - if (TextUtils.isEmpty(HandleSearch.rcuIp)) { - HDLDeviceManager.handle(sendDatas, sendDatas.command); - } else { - if (HandleSearch.rcuIp.equals(sendDatas.ipAddress)) { -// HDLLog.info("sendDatas.command = "+sendDatas.command); - HDLDeviceManager.handle(sendDatas, sendDatas.command); - } - } - break; - - case Configuration.RCU_SEARCH_COMMAND: if (sendDatas.port == Configuration.RCU_SEND_PORT) { HDLLog.info("鏀跺埌鎼滅储RCU鍛戒护"); @@ -501,6 +449,15 @@ HDLDeviceManager.handle(sendDatas, sendDatas.command); break; default: + //2021-08-10 鍏朵粬鎿嶄綔鐮佸啀缁熶竴澶勭悊 + if (TextUtils.isEmpty(HandleSearch.rcuIp)) { + HDLDeviceManager.handle(sendDatas, sendDatas.command); + } else { + if (HandleSearch.rcuIp.equals(sendDatas.ipAddress)) { +// HDLLog.info("sendDatas.command = "+sendDatas.command); + HDLDeviceManager.handle(sendDatas, sendDatas.command); + } + } break; } } -- Gitblit v1.8.0