From e91af284643d5e370b0d18c384fe8de65f59d9b3 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期四, 24 九月 2020 12:01:10 +0800 Subject: [PATCH] 2020-09-24 1.修改MQTTSDK引用方式,修复闪退问题。 --- Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommandText.java | 314 ++++++++-------- Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLZigbeeMqtt.java | 50 +- Android_HDL_SDK_XW/app/build.gradle | 6 Android_HDL_SDK_XW/build.gradle | 9 Android_HDL_SDK_XW/hdl_core/build.gradle | 59 +- org.eclipse.paho.client.mqttv3-1.2.0.jar | 0 /dev/null | 17 Android_HDL_SDK_XW/hdl_core/proguard-rules.pro | 3 Android_HDL_SDK_XW/README.md | 63 --- Android_HDL_SDK_XW/app/libs/HDL_ZigBeeSDK_V1.0.1.B1.20200923.aar | 0 Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/SearchZigbeeGateway.java | 191 +++++----- Android_HDL_SDK_XW/gradle/wrapper/gradle-wrapper.properties | 2 Android_HDL_SDK_XW/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlActivity.java | 75 +-- Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java | 294 +++++++------- org.eclipse.paho.client.mqttv3-1.2.5.jar | 0 打包aar/2020-09-23/HDL_ZigBeeSDK_V1.0.1.B1.20200923.aar | 0 Android_HDL_SDK_XW/.idea/jarRepositories.xml | 50 ++ 17 files changed, 549 insertions(+), 584 deletions(-) diff --git a/Android_HDL_SDK_XW/.idea/encodings.xml b/Android_HDL_SDK_XW/.idea/encodings.xml deleted file mode 100644 index 15a15b2..0000000 --- a/Android_HDL_SDK_XW/.idea/encodings.xml +++ /dev/null @@ -1,4 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project version="4"> - <component name="Encoding" addBOMForNewFiles="with NO BOM" /> -</project> \ No newline at end of file diff --git a/Android_HDL_SDK_XW/.idea/jarRepositories.xml b/Android_HDL_SDK_XW/.idea/jarRepositories.xml new file mode 100644 index 0000000..b50f2da --- /dev/null +++ b/Android_HDL_SDK_XW/.idea/jarRepositories.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project version="4"> + <component name="RemoteRepositoriesConfiguration"> + <remote-repository> + <option name="id" value="central" /> + <option name="name" value="Maven Central repository" /> + <option name="url" value="https://repo1.maven.org/maven2" /> + </remote-repository> + <remote-repository> + <option name="id" value="jboss.community" /> + <option name="name" value="JBoss Community repository" /> + <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" /> + </remote-repository> + <remote-repository> + <option name="id" value="MavenRepo" /> + <option name="name" value="MavenRepo" /> + <option name="url" value="https://repo.maven.apache.org/maven2/" /> + </remote-repository> + <remote-repository> + <option name="id" value="maven" /> + <option name="name" value="maven" /> + <option name="url" value="https://maven.google.com" /> + </remote-repository> + <remote-repository> + <option name="id" value="BintrayJCenter" /> + <option name="name" value="BintrayJCenter" /> + <option name="url" value="https://jcenter.bintray.com/" /> + </remote-repository> + <remote-repository> + <option name="id" value="Google" /> + <option name="name" value="Google" /> + <option name="url" value="https://dl.google.com/dl/android/maven2/" /> + </remote-repository> + <remote-repository> + <option name="id" value="$USER_HOME$/Library/Android/sdk/extras/google/m2repository" /> + <option name="name" value="$USER_HOME$/Library/Android/sdk/extras/google/m2repository" /> + <option name="url" value="file:$USER_HOME$/Library/Android/sdk/extras/google/m2repository" /> + </remote-repository> + <remote-repository> + <option name="id" value="$USER_HOME$/Library/Android/sdk/extras/android/m2repository" /> + <option name="name" value="$USER_HOME$/Library/Android/sdk/extras/android/m2repository" /> + <option name="url" value="file:$USER_HOME$/Library/Android/sdk/extras/android/m2repository/" /> + </remote-repository> + <remote-repository> + <option name="id" value="$USER_HOME$/Library/Android/sdk/extras/m2repository" /> + <option name="name" value="$USER_HOME$/Library/Android/sdk/extras/m2repository" /> + <option name="url" value="file:$USER_HOME$/Library/Android/sdk/extras/m2repository" /> + </remote-repository> + </component> +</project> \ No newline at end of file diff --git a/Android_HDL_SDK_XW/README.md b/Android_HDL_SDK_XW/README.md index 1e3026a..20a716b 100644 --- a/Android_HDL_SDK_XW/README.md +++ b/Android_HDL_SDK_XW/README.md @@ -2,66 +2,7 @@ HDL XW Android SDK Copyright (c) 2019 HDL Inc. -SDK 鐗堟湰锛歨dl_lib_v1.6.9.20200316_beta -1.澧炲姞灏忕被鏄�3鐨勯煶涔愭挱鏀惧櫒鏀寔; -2.鍔犲湴鐑ā鍧楀崟鐙帶鍒舵俯搴︽帴鍙o紝鎺ュ彛鑷姩鏍规嵁褰撳墠妯″紡璁剧疆褰撳墠妯″紡鐨勬俯搴﹀弬鏁帮紝涓嶉渶瑕佷笂灞傝嚜宸卞垽鏂�;(HDLCommand.geothermalCtrlTemp()) -3.澧炲姞绠�鏄撶紪绋嬫悳绱㈠洖澶�,閫氳繃閰嶇疆澶х被灏忕被锛岃澹板繀鍙澶囨ā鎷熸垚绗笁鏂归煶涔愭挱鏀惧櫒琚悳绱� ; -//閰嶇疆绠�鏄撶紪绋嬫悳绱㈢殑鍙傛暟 (SDK 鍒濆鍖栫殑鏃跺�欓厤缃竴娆�) -/** - * 閰嶇疆绠�鏄撶紪绋嬫悳绱㈣繑鍥炵殑榛樿鍙傛暟 - * @param mSDKLocalBigClass 澶х被ID - * @param mSDKLocalSmallClass 灏忕被ID - * @param mSDKLocalRemark 澶囨敞 - */ -public static void setEasyProgrammingSearchLocalData(int mSDKLocalBigClass, int mSDKLocalSmallClass, String mSDKLocalRemark); -澹板繀鍙澶噑etEasyProgrammingSearchLocalData(9,1,"澹板繀鍙煶涔�"); - -鍘熷湴鐑搴斿叧绯� -HDL 澹板繀鍙� -鏅�� 鑷姩 -鐧藉ぉ 鎵嬪姩 -绂诲紑 浼戠湢 -2020-03-15 淇敼涓� -HDL 澹板繀鍙� -鏅�� 鎵嬪姩 -鐧藉ぉ 鑷姩 -绂诲紑 浼戠湢 - -SDK 鐗堟湰锛歨dl_lib_v1.6.9.20200118_beta -1.淇RCU娣峰悎璋冨厜娣峰悎寮�鍏� 绫绘ā鍧楋紝浣跨敤鐗╃悊鍥炶矾闂; -2.澧炲姞榛樿鑾峰彇WiFi杩炴帴鐨勫箍鎾厤缃柟娉�; - - -SDK 鐗堟湰锛歨dl_lib_v1.6.8.20191016_beta -1.鎺у埗閮芥敼鎴愬箍鎾舰寮忎簡锛屼笉璁板綍涓�绔彛鐨処P銆� - - -SDK 鐗堟湰锛歨dl_lib_v1.6.4.20191015_beta -1.澧炲姞鎼滅储瀹岃澶囨垨鑰呭娉ㄥ埛鏂板畬锛岃嚜鍔ㄤ繚瀛樹竴娆℃暟鎹埌鏈湴銆� -2.澧炲姞璇诲彇鏈湴鏁版嵁鎺ュ彛锛� -3.澧炲姞鍒锋柊鎵�鏈夎澶囩殑澶囨敞鍜岀姸鎬佹帴鍙o紱 - -鎺ュ彛璇存槑锛� - /** - * 璇诲彇鍜屽姞杞芥湰鍦版暟鎹� - */ - private void getLocalDevicesDataList() { - devicesDatas = HDLDeviceManager.getLocalDevicesDataList(); - if (devicesDatas.size() > 0) { - updateDeviceListView(); - HandleSearch.refreshAllDevicesStateAndRemarks();//濡傛灉鏈湴鏈夋暟鎹紝鍙互璋冪敤璇ユ柟娉曪紝閬嶅巻鍙戦�佹寚浠わ紝鍒锋柊鎵�鏈夎澶囩殑澶囨敞鍜岀姸鎬� - } else { - //showToast("鏈湴鏁版嵁涓虹┖"); - } - } - -/**淇濆瓨鏁版嵁鍒版湰鍦版帴鍙o紝闄DK鑷姩淇濆瓨鍚庯紝涓婂眰鍙互閫夋嫨鎵嬪姩璋冪敤淇濆瓨*/ -HDLDeviceManager.saveDevicesDataList(); - - 鎻愪緵澹板繀鍙疭DK椤圭洰 -##Version 1.0.2 -1.鏂板鍦扮儹妯″潡鍜屾柊椋庣郴缁熸帶鍒跺拰璇诲彇鐘舵�佹帴鍙o紱 -2.鏂板鍦扮儹妯″潡鍜屾柊椋庣郴缁熸帶鍒舵紨绀洪〉闈紱 -3.targetSdkVersion 28锛� +##Version HDL_ZigBeeSDK_V1.0.1.B1.20200923.aar +1.淇敼org.eclipse.paho.client.mqttv3寮曠敤鏂瑰紡锛岃В鍐崇綏瀹朵箰涔嬪墠锛屾墦鍖呮柟娉曚細涓㈠けmqtt jar璧勬簮鏂囦欢锛屽鑷撮棯閫�闂銆� diff --git a/Android_HDL_SDK_XW/app/build.gradle b/Android_HDL_SDK_XW/app/build.gradle index 7e631d3..e3fc9b2 100644 --- a/Android_HDL_SDK_XW/app/build.gradle +++ b/Android_HDL_SDK_XW/app/build.gradle @@ -21,12 +21,14 @@ } dependencies { - implementation fileTree(include: ['*.jar'], dir: 'libs') + implementation fileTree(include: ['*.jar', '*.aar'], dir: 'libs') +// implementation fileTree(include: ['*.jar'], dir: 'libs') implementation 'com.android.support:appcompat-v7:28+' implementation 'com.android.support.constraint:constraint-layout:1.1.0' testImplementation 'junit:junit:4.12' androidTestImplementation 'com.android.support.test:runner:1.0.2' androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' - implementation project(':hdl_core') +// implementation project(':hdl_core') implementation 'org.greenrobot:eventbus:3.0.0' + implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5' } diff --git a/Android_HDL_SDK_XW/app/libs/HDL_ZigBeeSDK_V1.0.1.B1.20200923.aar b/Android_HDL_SDK_XW/app/libs/HDL_ZigBeeSDK_V1.0.1.B1.20200923.aar new file mode 100644 index 0000000..d2f7d80 --- /dev/null +++ b/Android_HDL_SDK_XW/app/libs/HDL_ZigBeeSDK_V1.0.1.B1.20200923.aar Binary files differ diff --git a/Android_HDL_SDK_XW/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlActivity.java b/Android_HDL_SDK_XW/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlActivity.java index c20bfca..6d4d53c 100644 --- a/Android_HDL_SDK_XW/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlActivity.java +++ b/Android_HDL_SDK_XW/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/CtrlActivity.java @@ -60,7 +60,6 @@ private boolean isZigbee = false; - @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -71,13 +70,12 @@ // 姝ゆ柟娉曚负涓诲姩鑾峰彇鍗曚竴璁惧鐘舵�侊紝閫昏緫妯″潡銆佽儗鏅煶涔愭ā鍧楁病鏈夎繖涓猘pi锛屼粎鏀寔鐏厜锛岀獥甯橈紝绌鸿皟銆備竴鑸笉闇�瑕佺敤鍒般�� - // HDLCommand.getDeviceState(appliancesInfo); + // HDLCommand.getDeviceState(appliancesInfo); initcurState(); initView(); initClickOnEvent(); - } @@ -433,9 +431,9 @@ private void initcurState() { appliancesInfo = (AppliancesInfo) getIntent().getSerializableExtra("hdl"); isZigbee = getIntent().getExtras().getBoolean("isZigbee2Item"); - if (isZigbee){ - HDLCommand.getDeviceState(CtrlActivity.this,appliancesInfo,isZigbee);//濡傛灉鏄痾igbee鐨勯渶瑕佽皟鐢ㄥ崟涓�鐘舵�佸洖澶� - }else { + if (isZigbee) { + HDLCommand.getDeviceState(CtrlActivity.this, appliancesInfo, isZigbee);//濡傛灉鏄痾igbee鐨勯渶瑕佽皟鐢ㄥ崟涓�鐘舵�佸洖澶� + } else { // lightState = 100;//鍒濆鍖栫伅鍏変寒搴�100 curtainState = CurtainCtrlParser.curtainOff; // 鑾峰彇鎵�鏈夎澶囩殑鐘舵�併�俤eviceStateBeanList涓烘墍鏈夎澶囩殑鐘舵�佸垪琛� @@ -516,7 +514,7 @@ lightBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - HDLCommand.lightCtrl(appliancesInfo, 50,isZigbee);//state鍊间唬琛ㄨ皟鍏夊ぇ灏�0-100 + HDLCommand.lightCtrl(appliancesInfo, 50, isZigbee);//state鍊间唬琛ㄨ皟鍏夊ぇ灏�0-100 // HDLCommand.lightCtrl(appliancesInfo,50,isZigbee); } }); @@ -525,7 +523,7 @@ @Override public void onClick(View view) { //绐楀笜妯″潡绗簩涓弬鏁� 涓篊urtainCtrlParser.curtainOn锛孋urtainCtrlParser.curtainOff锛孋urtainCtrlParser.curtainPause鍏朵腑涓�涓� - HDLCommand.curtainCtrl(appliancesInfo, curtainState,isZigbee); + HDLCommand.curtainCtrl(appliancesInfo, curtainState, isZigbee); if (curtainState == CurtainCtrlParser.curtainOn) { curtainState = CurtainCtrlParser.curtainOff; } else { @@ -538,14 +536,14 @@ curtainBtn2.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - HDLCommand.curtainCtrl(appliancesInfo, CurtainCtrlParser.curtainOn,isZigbee); + HDLCommand.curtainCtrl(appliancesInfo, CurtainCtrlParser.curtainOn, isZigbee); } }); curtainBtn3.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - HDLCommand.curtainCtrl(appliancesInfo, CurtainCtrlParser.curtainOff,isZigbee); + HDLCommand.curtainCtrl(appliancesInfo, CurtainCtrlParser.curtainOff, isZigbee); } }); @@ -553,14 +551,14 @@ curtainBtn4.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - HDLCommand.curtainCtrl(appliancesInfo, CurtainCtrlParser.curtainPause,isZigbee); + HDLCommand.curtainCtrl(appliancesInfo, CurtainCtrlParser.curtainPause, isZigbee); } }); curtainBtn5.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - HDLCommand.curtainCtrl(appliancesInfo, 20,isZigbee); + HDLCommand.curtainCtrl(appliancesInfo, 20, isZigbee); } }); @@ -568,11 +566,11 @@ @Override public void onClick(View view) { //婕旂ず褰撳墠鐘舵�佷负鍏筹紝璁剧疆涓哄紑銆傚紑锛岃缃负鍏炽�� - if (airSwitchState == 0) { - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSwich, AirCtrlParser.airOn,isZigbee);//绌鸿皟寮� - } else { - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSwich, AirCtrlParser.airOff,isZigbee);//绌鸿皟鍏� - } + if (airSwitchState == 0) { + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSwich, AirCtrlParser.airOn, isZigbee);//绌鸿皟寮� + } else { + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSwich, AirCtrlParser.airOff, isZigbee);//绌鸿皟鍏� + } } }); @@ -583,26 +581,26 @@ switch (airModeState) { case 0: //鑻ュ綋鍓嶇┖璋冩ā寮忎负鍒跺喎锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓哄埗鐑� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeHeatTem,isZigbee);//绌鸿皟妯″紡鍒剁儹 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeHeatTem, isZigbee);//绌鸿皟妯″紡鍒剁儹 break; case 1: //鑻ュ綋鍓嶇┖璋冩ā寮忎负鍒剁儹锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓洪�氶 - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeVen,isZigbee);//绌鸿皟妯″紡閫氶 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeVen, isZigbee);//绌鸿皟妯″紡閫氶 break; case 2: //鑻ュ綋鍓嶇┖璋冩ā寮忎负閫氶锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓鸿嚜鍔� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeAuto,isZigbee);//绌鸿皟妯″紡鑷姩 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeAuto, isZigbee);//绌鸿皟妯″紡鑷姩 break; case 3: //鑻ュ綋鍓嶇┖璋冩ā寮忎负鑷姩锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓烘娊婀� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeDehum,isZigbee);//绌鸿皟妯″紡鎶芥箍 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeDehum, isZigbee);//绌鸿皟妯″紡鎶芥箍 break; case 4: //鑻ュ綋鍓嶇┖璋冩ā寮忎负鎶芥箍锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓哄埗鍐� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeRefTem,isZigbee);//绌鸿皟妯″紡鍒跺喎 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeRefTem, isZigbee);//绌鸿皟妯″紡鍒跺喎 break; default: - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeRefTem,isZigbee);//绌鸿皟妯″紡鍒跺喎 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airMode, AirCtrlParser.airModeRefTem, isZigbee);//绌鸿皟妯″紡鍒跺喎 break; } @@ -617,19 +615,19 @@ switch (airSpeedState) { case 0: //鑻ュ綋鍓嶇┖璋冮閫熶负鑷姩锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓洪珮椋� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedHigh,isZigbee);//椋庨�熼珮椋� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedHigh, isZigbee);//椋庨�熼珮椋� break; case 1: //鑻ュ綋鍓嶇┖璋冮閫熶负楂橀锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓轰腑椋� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedMid,isZigbee);//椋庨�熶腑椋� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedMid, isZigbee);//椋庨�熶腑椋� break; case 2: //鑻ュ綋鍓嶇┖璋冮閫熶负涓锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓轰綆椋� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedLow,isZigbee);//椋庨�熶綆椋� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedLow, isZigbee);//椋庨�熶綆椋� break; case 3: //鑻ュ綋鍓嶇┖璋冮閫熶负浣庨锛屽垯鐐瑰嚮鎸夐挳璁剧疆涓鸿嚜鍔� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedAuto,isZigbee);//椋庨�熻嚜鍔� + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.airSpeed, AirCtrlParser.airSpeedAuto, isZigbee);//椋庨�熻嚜鍔� break; } } @@ -653,11 +651,11 @@ switch (airModeState) { case 0: //褰撳墠绌鸿皟妯″紡涓哄埗鍐� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.refTem, tempInt,isZigbee);//鍒跺喎娓╁害 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.refTem, tempInt, isZigbee);//鍒跺喎娓╁害 break; case 1: //褰撳墠绌鸿皟妯″紡涓哄埗鐑� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.heatTem, tempInt,isZigbee);//鍒剁儹娓╁害 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.heatTem, tempInt, isZigbee);//鍒剁儹娓╁害 break; case 2: //褰撳墠绌鸿皟妯″紡涓洪�氶 @@ -665,11 +663,11 @@ break; case 3: //褰撳墠绌鸿皟妯″紡涓鸿嚜鍔� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.autoTem, tempInt,isZigbee);//鑷姩娓╁害 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.autoTem, tempInt, isZigbee);//鑷姩娓╁害 break; case 4: //褰撳墠绌鸿皟妯″紡涓烘娊婀� - HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.dehumTem, tempInt,isZigbee);//鎶芥箍娓╁害 + HDLCommand.airCtrl(appliancesInfo, AirCtrlParser.dehumTem, tempInt, isZigbee);//鎶芥箍娓╁害 break; default: break; @@ -685,14 +683,14 @@ logicBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - HDLCommand.logicCtrl(appliancesInfo,isZigbee); + HDLCommand.logicCtrl(appliancesInfo, isZigbee); } }); sensorBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - HDLCommand.getDeviceState(CtrlActivity.this,appliancesInfo,isZigbee); + HDLCommand.getDeviceState(CtrlActivity.this, appliancesInfo, isZigbee); } }); } @@ -712,7 +710,7 @@ && event.getLightCtrlBackInfo().getChannelNum() == appliancesInfo.getChannelNum() && event.getLightCtrlBackInfo().getPhysicsChannelNum() == appliancesInfo.getPhysicsChannelNum() && event.getLightCtrlBackInfo().getAppliancesInfo().getDeviceType() == appliancesInfo.getDeviceType() - ) { + ) { // 鍏堝垽鏂槸鍚﹁秴鏃� if (!event.isSuccess()) { showToast("鐏厜鎺у埗瓒呮椂锛岃閲嶆柊鍐嶈瘯"); @@ -739,7 +737,7 @@ if (event.getCurtainCtrlBackInfo().getAppliancesInfo().getDeviceSubnetID() == appliancesInfo.getDeviceSubnetID() && event.getCurtainCtrlBackInfo().getAppliancesInfo().getDeviceDeviceID() == appliancesInfo.getDeviceDeviceID() && event.getCurtainCtrlBackInfo().getNum() == appliancesInfo.getChannelNum() - ) { + ) { if (!event.isSuccess()) { showToast("绐楀笜鎺у埗瓒呮椂锛岃閲嶆柊鍐嶈瘯"); @@ -790,7 +788,7 @@ if (event.getAirCtrlBackInfo().getAppliancesInfo().getDeviceDeviceID() == appliancesInfo.getDeviceDeviceID() && event.getAirCtrlBackInfo().getAppliancesInfo().getDeviceSubnetID() == appliancesInfo.getDeviceSubnetID() && event.getAirCtrlBackInfo().getAppliancesInfo().getChannelNum() == appliancesInfo.getChannelNum() - ) { + ) { // 鍏堝垽鏂槸鍚﹁秴鏃� if (!event.isSuccess()) { showToast("绌鸿皟鎺у埗瓒呮椂锛岃閲嶆柊鍐嶈瘯"); @@ -932,7 +930,7 @@ // 鍏堝垽鏂槸鍚﹁秴鏃� if (event.getLogicCtrlBackInfo().getAppliancesInfo().getDeviceDeviceID() == appliancesInfo.getDeviceDeviceID() && event.getLogicCtrlBackInfo().getAppliancesInfo().getDeviceSubnetID() == appliancesInfo.getDeviceSubnetID() - ) { + ) { if (!event.isSuccess()) { showToast("鍦烘櫙鎺у埗瓒呮椂锛岃閲嶆柊鍐嶈瘯"); return; @@ -946,7 +944,7 @@ public void onDeviceStateEventMain(DeviceStateEvent event) { if (event.getAppliancesInfo().getDeviceSubnetID() == appliancesInfo.getDeviceSubnetID() && event.getAppliancesInfo().getDeviceDeviceID() == appliancesInfo.getDeviceDeviceID() - ) { + ) { //杩欎釜杩斿洖鐨勪俊鎭槸褰撳墠鐘舵�佺殑 switch (event.getAppliancesInfo().getDeviceType()) { case HDLApConfig.TYPE_LIGHT_DIMMER: @@ -1409,7 +1407,6 @@ } } } - public void showToast(String text) { diff --git a/Android_HDL_SDK_XW/build.gradle b/Android_HDL_SDK_XW/build.gradle index 0f1c794..cff36d7 100644 --- a/Android_HDL_SDK_XW/build.gradle +++ b/Android_HDL_SDK_XW/build.gradle @@ -1,15 +1,14 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { - + repositories { google() - mavenCentral() - maven { url 'https://maven.google.com' } jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:3.3.0' + classpath 'com.android.tools.build:gradle:3.4.1' +// classpath 'com.jakewharton:butterknife-gradle-plugin:9.0.0' // classpath 'com.novoda:bintray-release:+' @@ -19,8 +18,6 @@ allprojects { repositories { google() - mavenCentral() - maven { url 'https://maven.google.com' } jcenter() } } diff --git a/Android_HDL_SDK_XW/gradle/wrapper/gradle-wrapper.properties b/Android_HDL_SDK_XW/gradle/wrapper/gradle-wrapper.properties index 8cc2e36..ec5c9f7 100644 --- a/Android_HDL_SDK_XW/gradle/wrapper/gradle-wrapper.properties +++ b/Android_HDL_SDK_XW/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip \ No newline at end of file +distributionUrl=https\://services.gradle.org/distributions/gradle-5.1.1-all.zip \ No newline at end of file diff --git a/Android_HDL_SDK_XW/hdl_core/build.gradle b/Android_HDL_SDK_XW/hdl_core/build.gradle index 3c659f2..8ef2596 100644 --- a/Android_HDL_SDK_XW/hdl_core/build.gradle +++ b/Android_HDL_SDK_XW/hdl_core/build.gradle @@ -1,15 +1,13 @@ apply plugin: 'com.android.library' -//apply plugin: 'com.novoda.bintray-release' android { compileSdkVersion 28 defaultConfig { minSdkVersion 17 targetSdkVersion 28 - versionCode 2 - versionName "1.0.8" + versionCode 1 + versionName "1.0.1" - testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" } buildTypes { @@ -20,47 +18,34 @@ } buildToolsVersion '28.0.3' + /** + * 鎵撳寘鑷姩鍛藉悕 + */ + android.libraryVariants.all { variant -> + variant.outputs.all { + outputFileName = "HDL_ZigBeeSDK_V" + + defaultConfig.versionName + ".B" + defaultConfig.versionCode + "." + releaseTime() + ".aar" + } + } + + // lintOptions { // abortOnError false // warning 'InvalidPackage' // } } -dependencies { - implementation fileTree(include: ['*.jar'], dir: 'libs') - implementation 'com.android.support:appcompat-v7:28+' - api 'org.greenrobot:eventbus:3.0.0' - testImplementation 'junit:junit:4.12' - androidTestImplementation 'com.android.support.test:runner:1.0.2' - androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2' - implementation files('libs/org.eclipse.paho.client.mqttv3-1.2.0.jar') +def releaseTime() { + return new Date().format("yyyyMMdd") } - -//task makeJar(type: Copy) { -////鍒犻櫎瀛樺湪鐨� -// delete'build/libs/test.jar' -////璁剧疆鎷疯礉鐨勬枃浠� -// from('build/intermediates/packaged-classes/release/') -////鎵撹繘jar鍖呭悗鐨勬枃浠剁洰褰� -// into('build/libs/') -////灏哻asses.jar鏀惧叆build/libs/鐩綍涓� -////include ,exclude鍙傛暟鏉ヨ缃繃婊� -////锛堟垜浠彧鍏冲績classes.jar杩欎釜鏂囦欢锛� -// include('classes.jar') -////閲嶅懡鍚� -// rename ('classes.jar','test.jar') -//} -//makeJar.dependsOn(build) +dependencies { + implementation fileTree(include: ['*.jar'], dir: 'libs') + implementation 'com.android.support:appcompat-v7:28.0.0' + api 'org.greenrobot:eventbus:3.0.0' + api 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.2.5' + testImplementation 'junit:junit:4.12' - - -//publish { -// userOrg = 'tommydai' -// groupId = 'com.hdl.sdk' -// artifactId = 'hdlsdk' -// publishVersion = '1.5.8' -// desc = 'HDL core libray' -//} +} diff --git a/Android_HDL_SDK_XW/hdl_core/proguard-rules.pro b/Android_HDL_SDK_XW/hdl_core/proguard-rules.pro index f1b4245..2276dd2 100644 --- a/Android_HDL_SDK_XW/hdl_core/proguard-rules.pro +++ b/Android_HDL_SDK_XW/hdl_core/proguard-rules.pro @@ -19,3 +19,6 @@ # If you keep the line number information, uncomment this to # hide the original source file name. #-renamesourcefileattribute SourceFile + +#-keep class org.eclipse.paho.client.mqttv3.logging.JSR47Logger { *; } +#-keep class org.eclipse.paho.* { *; } \ No newline at end of file diff --git a/Android_HDL_SDK_XW/hdl_core/src/androidTest/java/com/hdl/sdk/hdl_core/ExampleInstrumentedTest.java b/Android_HDL_SDK_XW/hdl_core/src/androidTest/java/com/hdl/sdk/hdl_core/ExampleInstrumentedTest.java deleted file mode 100644 index 6fbc106..0000000 --- a/Android_HDL_SDK_XW/hdl_core/src/androidTest/java/com/hdl/sdk/hdl_core/ExampleInstrumentedTest.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.hdl.sdk.hdl_core; - -import android.content.Context; -import android.support.test.InstrumentationRegistry; -import android.support.test.runner.AndroidJUnit4; - -import org.junit.Test; -import org.junit.runner.RunWith; - -import static org.junit.Assert.*; - -/** - * Instrumented test, which will execute on an Android device. - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -@RunWith(AndroidJUnit4.class) -public class ExampleInstrumentedTest { - @Test - public void useAppContext() { - // Context of the app under test. - Context appContext = InstrumentationRegistry.getTargetContext(); - - assertEquals("com.hdl.sdk.hdl_core.test", appContext.getPackageName()); - } -} diff --git a/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java b/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java index 5420b7b..ebdcc53 100644 --- a/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java +++ b/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java @@ -84,7 +84,6 @@ } - // /** // * 鑾峰彇鏈湴骞挎挱IP // * @return @@ -95,15 +94,17 @@ /** * 鑾峰彇鏈湴骞挎挱IP + * * @return */ - public static String getLocalBroadCastIp(){ + public static String getLocalBroadCastIp() { return NetWorkUtil.getLocalBroadCast(); } /** * 鏄惁寮�鍚疭DK鏃ュ織鎵撳嵃 * 2019-07-10鏂板 + * * @param bOpen */ public static void setHDLLogOpen(boolean bOpen) { @@ -123,7 +124,6 @@ // } - /** * 鑾峰彇RCU妯″潡鐨勮澶� * @@ -138,14 +138,13 @@ } - /** * 鑾峰彇瀹跺眳璁惧 * * @param context */ - public static void getHomeDevices(Context context ,Boolean isZigbee) { - HandleSearch.getHomeDevices(context,isZigbee); + public static void getHomeDevices(Context context, Boolean isZigbee) { + HandleSearch.getHomeDevices(context, isZigbee); } // public static void cancelSearching(){ @@ -173,31 +172,31 @@ * @param info * @param state */ - public static void lightCtrl(final AppliancesInfo info, int state,boolean isZigbee) { - if (isZigbee){ - if (statusReadBackBean != null){ - if (info.getBigType() == Configuration.LIGTH_BIG_TYPE && info.getLittleType() == 1){//缁х數鍣� 寮�鍏� - if (statusReadBackBean.getValue() == Configuration.RELAY_ON){ - HDLCommandText.sendStatus(zigbeeDeviceBean, ZigbeeDeviceID.OnOffOutput,Configuration.RELAY_OFF); - }else { - HDLCommandText.sendStatus(zigbeeDeviceBean,ZigbeeDeviceID.OnOffOutput,Configuration.RELAY_ON); + public static void lightCtrl(final AppliancesInfo info, int state, boolean isZigbee) { + if (isZigbee) { + if (statusReadBackBean != null) { + if (info.getBigType() == Configuration.LIGTH_BIG_TYPE && info.getLittleType() == 1) {//缁х數鍣� 寮�鍏� + if (statusReadBackBean.getValue() == Configuration.RELAY_ON) { + HDLCommandText.sendStatus(zigbeeDeviceBean, ZigbeeDeviceID.OnOffOutput, Configuration.RELAY_OFF); + } else { + HDLCommandText.sendStatus(zigbeeDeviceBean, ZigbeeDeviceID.OnOffOutput, Configuration.RELAY_ON); } } - if (info.getBigType() == Configuration.LIGTH_BIG_TYPE && info.getLittleType() == 0){//璋冨厜鍣� 寮�鍒板浐瀹氱殑鍊兼垨鑰呭紑鍒�0 + if (info.getBigType() == Configuration.LIGTH_BIG_TYPE && info.getLittleType() == 0) {//璋冨厜鍣� 寮�鍒板浐瀹氱殑鍊兼垨鑰呭紑鍒�0 int value = (int) (state * 2.55); - if (statusReadBackBean.getValue()!=0){ + if (statusReadBackBean.getValue() != 0) { //lightStatus = 0; - HDLCommandText.sendStatus(zigbeeDeviceBean,ZigbeeDeviceID.DimmableLight,0); - }else { + HDLCommandText.sendStatus(zigbeeDeviceBean, ZigbeeDeviceID.DimmableLight, 0); + } else { //lightStatus = value; - HDLCommandText.sendStatus(zigbeeDeviceBean,ZigbeeDeviceID.DimmableLight,value); + HDLCommandText.sendStatus(zigbeeDeviceBean, ZigbeeDeviceID.DimmableLight, value); } } - }else { + } else { HDLLog.info("涓鸿幏鍙栧埌璁惧鐘舵��"); } - }else { + } else { // HDLDeviceManager.isLightCtrlSuccess = false; HDLDeviceManager.setDeviceCtrlSuccessStateWithInfo(info, false); if (lightCtrlFailTimer != null) { @@ -261,23 +260,23 @@ * @param info * @param state 璋冩暣鐨勫�� */ - public static void curtainCtrl(final AppliancesInfo info, int state,boolean isZigbee) { - if (isZigbee){ - switch (state){ - case CurtainCtrlParser.curtainOn: - HDLCommandText.sendCurtainStatus(zigbeeDeviceBean,ZigbeeDeviceID.WindowCoveringDevice,0,0);//value = 0涓哄紑锛宼ag = 0涓烘爣璁版帶鍒� + public static void curtainCtrl(final AppliancesInfo info, int state, boolean isZigbee) { + if (isZigbee) { + switch (state) { + case CurtainCtrlParser.curtainOn: + HDLCommandText.sendCurtainStatus(zigbeeDeviceBean, ZigbeeDeviceID.WindowCoveringDevice, 0, 0);//value = 0涓哄紑锛宼ag = 0涓烘爣璁版帶鍒� break; - case CurtainCtrlParser.curtainOff: - HDLCommandText.sendCurtainStatus(zigbeeDeviceBean,ZigbeeDeviceID.WindowCoveringDevice,1,0);//value = 1涓哄叧锛宼ag = 0涓烘爣璁版帶鍒� + case CurtainCtrlParser.curtainOff: + HDLCommandText.sendCurtainStatus(zigbeeDeviceBean, ZigbeeDeviceID.WindowCoveringDevice, 1, 0);//value = 1涓哄叧锛宼ag = 0涓烘爣璁版帶鍒� break; case CurtainCtrlParser.curtainPause: - HDLCommandText.sendCurtainStatus(zigbeeDeviceBean,ZigbeeDeviceID.WindowCoveringDevice,2,0);//value = 2涓烘殏鍋滐紝tag = 0涓烘爣璁版帶鍒� + HDLCommandText.sendCurtainStatus(zigbeeDeviceBean, ZigbeeDeviceID.WindowCoveringDevice, 2, 0);//value = 2涓烘殏鍋滐紝tag = 0涓烘爣璁版帶鍒� break; default: - HDLCommandText.sendCurtainStatus(zigbeeDeviceBean,ZigbeeDeviceID.WindowCoveringDevice,state,1);//value = state涓鸿皟鏁存暟鍊硷紝tag = 1涓烘爣璁版暟鍊兼帶鍒� + HDLCommandText.sendCurtainStatus(zigbeeDeviceBean, ZigbeeDeviceID.WindowCoveringDevice, state, 1);//value = state涓鸿皟鏁存暟鍊硷紝tag = 1涓烘爣璁版暟鍊兼帶鍒� break; } - }else { + } else { HDLDeviceManager.setDeviceCtrlSuccessStateWithInfo(info, false); if (curtainCtrlFailTimer != null) { curtainCtrlFailTimer.cancel(); @@ -336,69 +335,69 @@ * @param type * @param state */ - public static void airCtrl(final AppliancesInfo info, int type, int state , boolean isZigbee) { - if (isZigbee){ - switch (type){ + public static void airCtrl(final AppliancesInfo info, int type, int state, boolean isZigbee) { + if (isZigbee) { + switch (type) { case AirCtrlParser.airSwich: //寮�鍏抽�夋嫨 - switch (state){ + switch (state) { case AirCtrlParser.airOn://绌鸿皟寮� - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,1,0,0);//value = 1涓虹┖璋冨紑 tag = 0涓烘爣蹇椾负寮�鍏虫帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 1, 0, 0);//value = 1涓虹┖璋冨紑 tag = 0涓烘爣蹇椾负寮�鍏虫帶鍒� mode蹇界暐 break; case AirCtrlParser.airOff://绌鸿皟鍏� - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,0,0,0);//value = 0涓虹┖璋冨紑 tag = 0涓烘爣蹇椾负寮�鍏虫帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 0, 0, 0);//value = 0涓虹┖璋冨紑 tag = 0涓烘爣蹇椾负寮�鍏虫帶鍒� mode蹇界暐 break; } break; case AirCtrlParser.airMode: //鎭掓俯鍣ㄦā寮忛�夋嫨 - switch (state){ + switch (state) { case AirCtrlParser.airModeHeatTem://绌鸿皟妯″紡鍒剁儹 - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,4,1,0);//value = 4涓烘亽娓╁櫒鍒剁儹 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 4, 1, 0);//value = 4涓烘亽娓╁櫒鍒剁儹 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 break; case AirCtrlParser.airModeVen://绌鸿皟妯″紡閫氶 - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,7,1,0);//value = 7涓烘亽娓╁櫒閫氶 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 7, 1, 0);//value = 7涓烘亽娓╁櫒閫氶 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 break; case AirCtrlParser.airModeAuto://绌鸿皟妯″紡鑷姩 - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,1,1,0);//value = 1涓烘亽娓╁櫒鑷姩 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 1, 1, 0);//value = 1涓烘亽娓╁櫒鑷姩 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 break; case AirCtrlParser.airModeDehum://绌鸿皟妯″紡鎶芥箍 - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,8,1,0);//value = 8涓烘亽娓╁櫒鎶芥箍 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 8, 1, 0);//value = 8涓烘亽娓╁櫒鎶芥箍 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 break; case AirCtrlParser.airModeRefTem://绌鸿皟妯″紡鍒跺喎 - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,3,1,0);//value = 3涓烘亽娓╁櫒鍒跺喎 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 3, 1, 0);//value = 3涓烘亽娓╁櫒鍒跺喎 tag = 1涓烘爣蹇椾负鎭掓俯鍣ㄦ帶鍒� mode蹇界暐 break; } break; case AirCtrlParser.airSpeed: //椋庨�熸ā寮忛�夋嫨 - switch (state){ + switch (state) { case AirCtrlParser.airSpeedHigh://椋庨�熼珮椋� - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,3,2,0);//value = 3涓洪閫熼珮椋� tag = 2涓烘爣蹇椾负椋庨�熸帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 3, 2, 0);//value = 3涓洪閫熼珮椋� tag = 2涓烘爣蹇椾负椋庨�熸帶鍒� mode蹇界暐 break; case AirCtrlParser.airSpeedMid://椋庨�熶腑椋� - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,2,2,0);//value = 2涓洪閫熶腑椋� tag = 2涓烘爣蹇椾负椋庨�熸帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 2, 2, 0);//value = 2涓洪閫熶腑椋� tag = 2涓烘爣蹇椾负椋庨�熸帶鍒� mode蹇界暐 break; case AirCtrlParser.airSpeedLow://椋庨�熶綆椋� - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,1,2,0);//value = 1涓洪閫熶綆椋� tag = 2涓烘爣蹇椾负椋庨�熸帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 1, 2, 0);//value = 1涓洪閫熶綆椋� tag = 2涓烘爣蹇椾负椋庨�熸帶鍒� mode蹇界暐 break; case AirCtrlParser.airSpeedAuto://椋庨�熻嚜鍔� - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,5,2,0);//value = 5涓洪閫熻嚜鍔� tag = 2涓烘爣蹇椾负椋庨�熸帶鍒� mode蹇界暐 + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, 5, 2, 0);//value = 5涓洪閫熻嚜鍔� tag = 2涓烘爣蹇椾负椋庨�熸帶鍒� mode蹇界暐 break; } break; case AirCtrlParser.dehumTem://褰撳墠绌鸿皟妯″紡涓烘娊婀� case AirCtrlParser.refTem: //褰撳墠绌鸿皟妯″紡涓哄埗鍐� - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,state,3,1);//value = state涓烘俯搴﹀�� tag = 3涓烘爣蹇椾负娓╁害鎺у埗 mode = 1涓哄埗鍐� + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, state, 3, 1);//value = state涓烘俯搴﹀�� tag = 3涓烘爣蹇椾负娓╁害鎺у埗 mode = 1涓哄埗鍐� break; case AirCtrlParser.heatTem://褰撳墠绌鸿皟妯″紡涓哄埗鐑� - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,state,3,0);//value = state涓烘俯搴﹀�� tag = 3涓烘爣蹇椾负娓╁害鎺у埗 mode = 0涓哄埗鐑� + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, state, 3, 0);//value = state涓烘俯搴﹀�� tag = 3涓烘爣蹇椾负娓╁害鎺у埗 mode = 0涓哄埗鐑� break; case AirCtrlParser.autoTem://褰撳墠绌鸿皟妯″紡涓鸿嚜鍔� - HDLCommandText.sendAirStatus(zigbeeDeviceBean,ZigbeeDeviceID.Thermostat,state,3,2);//value = state涓烘俯搴﹀�� tag = 3涓烘爣蹇椾负娓╁害鎺у埗 mode = 2涓鸿嚜鍔� + HDLCommandText.sendAirStatus(zigbeeDeviceBean, ZigbeeDeviceID.Thermostat, state, 3, 2);//value = state涓烘俯搴﹀�� tag = 3涓烘爣蹇椾负娓╁害鎺у埗 mode = 2涓鸿嚜鍔� break; } - }else { + } else { // HDLDeviceManager.isACCtrlSuccess = false; HDLDeviceManager.setDeviceCtrlSuccessStateWithInfo(info, false); if (acCtrlFailTimer != null) { @@ -451,32 +450,32 @@ * @param type * @param state 2019-07-09 */ - public static void freshAirCtrl(final AppliancesInfo info, int type, int state,boolean isZigbee) { - if (isZigbee){ - switch (type){ + public static void freshAirCtrl(final AppliancesInfo info, int type, int state, boolean isZigbee) { + if (isZigbee) { + switch (type) { case FreshAirParser.freshAirSwich: - switch (state){ - case FreshAirParser.freshAirOn: - HDLCommandText.sendStatus(zigbeeDeviceBean,ZigbeeDeviceID.AirPanel,1);//value = 1涓烘柊椋庡紑 - break; - case FreshAirParser.freshAirOff: - HDLCommandText.sendStatus(zigbeeDeviceBean,ZigbeeDeviceID.AirPanel,0);//value = 0涓烘柊椋庡叧 - break; - } - break; + switch (state) { + case FreshAirParser.freshAirOn: + HDLCommandText.sendStatus(zigbeeDeviceBean, ZigbeeDeviceID.AirPanel, 1);//value = 1涓烘柊椋庡紑 + break; + case FreshAirParser.freshAirOff: + HDLCommandText.sendStatus(zigbeeDeviceBean, ZigbeeDeviceID.AirPanel, 0);//value = 0涓烘柊椋庡叧 + break; + } + break; case FreshAirParser.freshAirSpeed://楂橀銆佷綆椋� - switch (state){ + switch (state) { case FreshAirParser.freshAirSpeedMid://鎺у埗鎴愰珮椋� - HDLCommandText.sendStatus(zigbeeDeviceBean,ZigbeeDeviceID.AirPanel,3);//value = 3涓烘柊椋庨珮椋� + HDLCommandText.sendStatus(zigbeeDeviceBean, ZigbeeDeviceID.AirPanel, 3);//value = 3涓烘柊椋庨珮椋� break; case FreshAirParser.freshAirSpeedLow://鎺у埗鎴愪綆閫� case FreshAirParser.freshAirSpeedOff: - HDLCommandText.sendStatus(zigbeeDeviceBean,ZigbeeDeviceID.AirPanel,1);//value = 1涓烘柊椋庝綆椋� + HDLCommandText.sendStatus(zigbeeDeviceBean, ZigbeeDeviceID.AirPanel, 1);//value = 1涓烘柊椋庝綆椋� break; } break; } - }else { + } else { // HDLDeviceManager.isFreshAirCtrlSuccess = false; HDLDeviceManager.setDeviceCtrlSuccessStateWithInfo(info, false); if (freshAirCtrlFailTimer != null) { @@ -513,10 +512,10 @@ * * @param info */ - public static void logicCtrl(final AppliancesInfo info,final boolean isZigbee) { - if (isZigbee){ - HDLCommandText.sendSceneStatus(zigbeeSceneBean.getScenesId(),0);//鎺у埗鍦烘櫙鐨刬d锛屽欢鏃舵椂闂翠负0 - }else { + public static void logicCtrl(final AppliancesInfo info, final boolean isZigbee) { + if (isZigbee) { + HDLCommandText.sendSceneStatus(zigbeeSceneBean.getScenesId(), 0);//鎺у埗鍦烘櫙鐨刬d锛屽欢鏃舵椂闂翠负0 + } else { // HDLDeviceManager.isSceneCtrlSuccess = false; HDLDeviceManager.setDeviceCtrlSuccessStateWithInfo(info, false); @@ -678,16 +677,17 @@ // }, 5000); // // } + /** * 鑾峰彇鍗曚竴璁惧鐘舵�� */ - public static void getDeviceState(Context context,final AppliancesInfo appliancesInfo,boolean isZigbee) { - if (isZigbee){ - zigbeeDeviceDatas = SPUtils.getZigbeeDeviceSaveBean(context,SPUtils.KEY_ZIGBEE_IP); - zigbeeSceneDatas = SPUtils.getZigbeeSceneSaveBean(context,SPUtils.KEY_ZIGBEE_SCENE_IP); + public static void getDeviceState(Context context, final AppliancesInfo appliancesInfo, boolean isZigbee) { + if (isZigbee) { + zigbeeDeviceDatas = SPUtils.getZigbeeDeviceSaveBean(context, SPUtils.KEY_ZIGBEE_IP); + zigbeeSceneDatas = SPUtils.getZigbeeSceneSaveBean(context, SPUtils.KEY_ZIGBEE_SCENE_IP); HDLCommandText hdlCommandText = new HDLCommandText(); - for (ZigbeeDeviceSaveBean zigbeeDeviceSaveBean : zigbeeDeviceDatas){ - if (appliancesInfo.getBigType() == Configuration.LIGTH_BIG_TYPE && appliancesInfo.getLittleType() == 1){ + for (ZigbeeDeviceSaveBean zigbeeDeviceSaveBean : zigbeeDeviceDatas) { + if (appliancesInfo.getBigType() == Configuration.LIGTH_BIG_TYPE && appliancesInfo.getLittleType() == 1) { //缁х數鍣� type = ZigbeeDeviceID.OnOffOutput; if (zigbeeDeviceSaveBean.getmSubnetID() == appliancesInfo.getDeviceSubnetID() && @@ -701,7 +701,7 @@ } } - if (appliancesInfo.getBigType() == Configuration.LIGTH_BIG_TYPE && appliancesInfo.getLittleType() == 0){ + if (appliancesInfo.getBigType() == Configuration.LIGTH_BIG_TYPE && appliancesInfo.getLittleType() == 0) { //璋冨厜鍣� type = ZigbeeDeviceID.DimmableLight; if (zigbeeDeviceSaveBean.getmSubnetID() == appliancesInfo.getDeviceSubnetID() && @@ -714,7 +714,7 @@ HDLCommandText.initStatus(zigbeeDeviceSaveBean, ZigbeeDeviceID.DimmableLight); } } - if (appliancesInfo.getBigType() == Configuration.CURTAIN_BIG_TYPE && appliancesInfo.getLittleType() == 0){ + if (appliancesInfo.getBigType() == Configuration.CURTAIN_BIG_TYPE && appliancesInfo.getLittleType() == 0) { //绐楀笜 type = ZigbeeDeviceID.WindowCoveringDevice; if (zigbeeDeviceSaveBean.getmSubnetID() == appliancesInfo.getDeviceSubnetID() && @@ -727,7 +727,7 @@ HDLCommandText.initStatus(zigbeeDeviceSaveBean, ZigbeeDeviceID.WindowCoveringDevice); } } - if (appliancesInfo.getBigType() ==Configuration.AIR_BIG_TYPE && appliancesInfo.getLittleType() == 0){ + if (appliancesInfo.getBigType() == Configuration.AIR_BIG_TYPE && appliancesInfo.getLittleType() == 0) { //绌鸿皟 type = ZigbeeDeviceID.Thermostat; if (zigbeeDeviceSaveBean.getmSubnetID() == appliancesInfo.getDeviceSubnetID() && @@ -740,7 +740,7 @@ HDLCommandText.initStatus(zigbeeDeviceSaveBean, ZigbeeDeviceID.Thermostat); } } - if (appliancesInfo.getBigType() ==Configuration.FRESH_AIR_BIG_TYPE && appliancesInfo.getLittleType() == 0){ + if (appliancesInfo.getBigType() == Configuration.FRESH_AIR_BIG_TYPE && appliancesInfo.getLittleType() == 0) { //鏂伴 type = ZigbeeDeviceID.AirPanel; if (zigbeeDeviceSaveBean.getmSubnetID() == appliancesInfo.getDeviceSubnetID() && @@ -754,8 +754,8 @@ } } } - for (ZigbeeSceneSaveBean zigbeeSceneSaveBean : zigbeeSceneDatas){ - if (appliancesInfo.getBigType() == Configuration.GLOBAL_LOGIC_BIG_TYPE && appliancesInfo.getLittleType() == 0){ + for (ZigbeeSceneSaveBean zigbeeSceneSaveBean : zigbeeSceneDatas) { + if (appliancesInfo.getBigType() == Configuration.GLOBAL_LOGIC_BIG_TYPE && appliancesInfo.getLittleType() == 0) { //鍦烘櫙 type = ZigbeeDeviceID.SceneMark; if (zigbeeSceneSaveBean.getSubnetId() == appliancesInfo.getDeviceSubnetID() && @@ -767,133 +767,133 @@ } } } - Log.d("11113", "type: "+type); + Log.d("11113", "type: " + type); //璇诲啓鐘舵�佷俊鎭洖璋� HDLCommandText.setStateListener(new StateListener() { @Override public void onData(final StateEvent event) { //涓婃姤zigbee鍥為淇℃伅 Log.d("11113", "zigbee 鍥為json:" + event.getJson()); - switch (type){ + switch (type) { case ZigbeeDeviceID.OnOffOutput: //缁х數鍣ㄨ澶囧洖璋� statusReadBackBean = JsonUtil.parseJsonWithGson(event.getJson(), StatusReadBackBean.class); - if (statusReadBackBean.getValue() == Configuration.RELAY_ON){ + if (statusReadBackBean.getValue() == Configuration.RELAY_ON) { //缁х數鍣ㄥ叧 appliancesInfo.setCurState(0); EventBus.getDefault().post(new DeviceStateEvent(appliancesInfo, true)); - }else { + } else { //缁х數鍣ㄥ紑 appliancesInfo.setCurState(100); EventBus.getDefault().post(new DeviceStateEvent(appliancesInfo, true)); } break; - case ZigbeeDeviceID.WindowCoveringDevice: - //绐楀笜璁惧鍥炶皟 - statusReadBackBean = JsonUtil.parseJsonWithGson(event.getJson(), StatusReadBackBean.class); + case ZigbeeDeviceID.WindowCoveringDevice: + //绐楀笜璁惧鍥炶皟 + statusReadBackBean = JsonUtil.parseJsonWithGson(event.getJson(), StatusReadBackBean.class); appliancesInfo.setCurState(statusReadBackBean.getValue()); - EventBus.getDefault().post(new DeviceStateEvent(appliancesInfo,true)); + EventBus.getDefault().post(new DeviceStateEvent(appliancesInfo, true)); break; case ZigbeeDeviceID.DimmableLight: //璋冨厜鍣ㄨ澶� statusReadBackBean = JsonUtil.parseJsonWithGson(event.getJson(), StatusReadBackBean.class); - Log.d("2222", "鍥炶皟鏁版嵁: "+statusReadBackBean.getValue()); + Log.d("2222", "鍥炶皟鏁版嵁: " + statusReadBackBean.getValue()); appliancesInfo.setCurState(statusReadBackBean.getValue()); - EventBus.getDefault().post(new DeviceStateEvent(appliancesInfo,true)); + EventBus.getDefault().post(new DeviceStateEvent(appliancesInfo, true)); break; case ZigbeeDeviceID.Thermostat: //娓╁害璁惧 - thermostatReadBean = JsonUtil.parseJsonWithGson(event.getJson(),StatusThermostatReadBean.class); + thermostatReadBean = JsonUtil.parseJsonWithGson(event.getJson(), StatusThermostatReadBean.class); int fanMode = thermostatReadBean.getFanmode(); //鏂伴妯″紡 0锛歄ff銆�1锛歀ow銆�2锛歁edium銆�3锛欻igh銆�4锛歄n銆�5锛欰uto銆�6锛歋mart int thermostatMode = thermostatReadBean.getThermostatmode();//鎭掓俯妯″紡 0锛歄ff銆�1锛欰uto銆�3锛欳ool銆�4锛欻eat銆�5锛欵mergency heating銆�6锛歅recooling銆�7锛欶an only銆�8锛欴ry銆�9锛歋leep锛� int coolingSetpoint = thermostatReadBean.getCoolingSetpoint();//鍒跺喎娓╁害 int heatingSetpoint = thermostatReadBean.getHeatingSetpoint();//鍒剁儹娓╁害 int tag = thermostatReadBean.getTag(); - switch (tag){ + switch (tag) { case 0://寮�鍏虫ā寮忚繑鍥� - if (fanMode == 0 && thermostatMode == 0){ - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich,AirCtrlParser.airOff)); //绌鸿皟鍏� - }else { - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich,AirCtrlParser.airOn));//绌鸿皟寮� + if (fanMode == 0 && thermostatMode == 0) { + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich, AirCtrlParser.airOff)); //绌鸿皟鍏� + } else { + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich, AirCtrlParser.airOn));//绌鸿皟寮� } break; case 1://鎭掓俯鍣ㄦā寮忚繑鍥� - if (fanMode ==0 && thermostatMode == 0){ - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich,AirCtrlParser.airOff));//绌鸿皟鍏� - }else { - switch (thermostatMode){ - case 1://鑷姩妯″紡 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode,AirCtrlParser.airModeAuto)); - break; - case 3://鍒跺喎妯″紡 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode,AirCtrlParser.airModeRefTem)); - break; - case 4://鍒剁儹妯″紡 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode,AirCtrlParser.airModeHeatTem)); - break; - case 7://閫氶妯″紡 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode,AirCtrlParser.airModeVen)); - break; - case 8://鎶芥箍妯″紡 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode,AirCtrlParser.airModeDehum)); - break; - } + if (fanMode == 0 && thermostatMode == 0) { + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich, AirCtrlParser.airOff));//绌鸿皟鍏� + } else { + switch (thermostatMode) { + case 1://鑷姩妯″紡 + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode, AirCtrlParser.airModeAuto)); + break; + case 3://鍒跺喎妯″紡 + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode, AirCtrlParser.airModeRefTem)); + break; + case 4://鍒剁儹妯″紡 + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode, AirCtrlParser.airModeHeatTem)); + break; + case 7://閫氶妯″紡 + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode, AirCtrlParser.airModeVen)); + break; + case 8://鎶芥箍妯″紡 + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airMode, AirCtrlParser.airModeDehum)); + break; } + } break; case 2://閫氶鍣ㄦā寮忚繑鍥� - if (fanMode == 0 && thermostatMode == 0){ - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich,AirCtrlParser.airOff)); //绌鸿皟鍏� - }else { - switch (fanMode){ + if (fanMode == 0 && thermostatMode == 0) { + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich, AirCtrlParser.airOff)); //绌鸿皟鍏� + } else { + switch (fanMode) { case 1://浣庨 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSpeed,AirCtrlParser.airSpeedLow)); + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSpeed, AirCtrlParser.airSpeedLow)); break; case 2://涓 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSpeed,AirCtrlParser.airSpeedMid)); + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSpeed, AirCtrlParser.airSpeedMid)); break; case 3://楂橀 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSpeed,AirCtrlParser.airSpeedHigh)); + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSpeed, AirCtrlParser.airSpeedHigh)); break; case 5://鑷姩 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSpeed,AirCtrlParser.airSpeedAuto)); + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSpeed, AirCtrlParser.airSpeedAuto)); break; } } break; case 3://璁剧疆娓╁害妯″紡杩斿洖 - if (fanMode == 0 && thermostatMode == 0){ - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich,AirCtrlParser.airOff)); //绌鸿皟鍏� - }else { - switch (thermostatMode){ + if (fanMode == 0 && thermostatMode == 0) { + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.airSwich, AirCtrlParser.airOff)); //绌鸿皟鍏� + } else { + switch (thermostatMode) { case 1://TODO 鑷姩妯″紡娓╁害杩斿洖闇�瑕佸崗璁笂鐨� - if (coolingSetpoint !=0 && heatingSetpoint ==0 ){ - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.autoTem,coolingSetpoint)); - }else { - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.autoTem,heatingSetpoint)); + if (coolingSetpoint != 0 && heatingSetpoint == 0) { + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.autoTem, coolingSetpoint)); + } else { + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.autoTem, heatingSetpoint)); } break; case 3://鍒跺喎妯″紡 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.refTem,coolingSetpoint)); + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.refTem, coolingSetpoint)); break; case 4://鍒剁儹妯″紡 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.heatTem,heatingSetpoint)); + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.heatTem, heatingSetpoint)); break; case 8://鎶芥箍妯″紡 - appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.dehumTem,coolingSetpoint)); + appliancesInfo.setArrCurState(AirCtrlParser.getAirPanelAddByte(AirCtrlParser.dehumTem, coolingSetpoint)); break; } } break; } - EventBus.getDefault().post(new DeviceStateEvent(appliancesInfo,true)); + EventBus.getDefault().post(new DeviceStateEvent(appliancesInfo, true)); break; case ZigbeeDeviceID.AirPanel: //鏂伴璁惧鍥炶皟 statusReadBackBean = JsonUtil.parseJsonWithGson(event.getJson(), StatusReadBackBean.class); FreshAirBackInfo freshAirBackInfo = new FreshAirBackInfo(); freshAirBackInfo.setAppliancesInfo(appliancesInfo); - switch (statusReadBackBean.getValue()){ + switch (statusReadBackBean.getValue()) { case 0://椋庢墖鍏� freshAirBackInfo.setIsOn(0); freshAirBackInfo.setFreshAirSpeed(0); @@ -909,12 +909,12 @@ case 255: break; } - EventBus.getDefault().post(new FreshAirFeedBackEvent(freshAirBackInfo,true)); + EventBus.getDefault().post(new FreshAirFeedBackEvent(freshAirBackInfo, true)); break; case ZigbeeDeviceID.SceneMark: //鍦烘櫙鍥炶皟 - statusReadBackBean = JsonUtil.parseJsonWithGson(event.getJson(),StatusReadBackBean.class); - if (statusReadBackBean.getValue() == 1){ + statusReadBackBean = JsonUtil.parseJsonWithGson(event.getJson(), StatusReadBackBean.class); + if (statusReadBackBean.getValue() == 1) { LogicCtrlBackInfo logicCtrlBackInfo = new LogicCtrlBackInfo(); logicCtrlBackInfo.setAppliancesInfo(appliancesInfo); EventBus.getDefault().post(new LogicFeedBackEvent(logicCtrlBackInfo, true)); @@ -923,7 +923,7 @@ } } }); - }else { + } else { if (appliancesInfo == null) { return; } @@ -1131,8 +1131,8 @@ && info.getChannelNum() == infos.get(j).getChannelNum() ) { //杩欓噷搴旇鏄淇鐨勶紝鏆傛椂鏈壘鍒般�� - //20190712瑙e喅寮哄埗杞崲int绫诲瀷闂�� - int state = HDLUtlis.getIntegerByObject(infos.get(j).getCurStateObject()); + //20190712瑙e喅寮哄埗杞崲int绫诲瀷闂�� + int state = HDLUtlis.getIntegerByObject(infos.get(j).getCurStateObject()); switch (state) { case -1: curState = 0; diff --git a/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommandText.java b/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommandText.java index ab4e1fb..59422a0 100644 --- a/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommandText.java +++ b/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommandText.java @@ -1,6 +1,7 @@ package com.hdl.sdk.hdl_core.HDLDeviceManger.Core; import android.util.Log; + import com.google.gson.Gson; import com.hdl.sdk.hdl_core.Config.ZigbeeDeviceID; import com.hdl.sdk.hdl_core.HDLDeviceManger.Bean.ZigbeeBean.CommonErrorBean; @@ -39,7 +40,7 @@ private static boolean isFinished = false;//鏍囪鍥炶皟鍜屽満鏅澶囨暟鎹� public static Timer timer = null;//璁剧疆璁惧鍜屽満鏅洖璋� private static String ipAddr;//璁惧畾鎺у埗鏃剁殑ip鍦板潃 - private static boolean is1 = false,is2 = false;//鏍囪鑾峰彇鐨勬俯搴﹀拰椋庢墖寮哄害 + private static boolean is1 = false, is2 = false;//鏍囪鑾峰彇鐨勬俯搴﹀拰椋庢墖寮哄害 private static int airTag = 0;//鏍囪浼犺繘鏉ユ帶鍒剁┖璋冪殑鏄粈涔堟柟寮忥紙寮�鍏炽�佹ā寮忋�侀閫熴�佽瀹氭俯搴︼級 private static int airMode = 1;//鏍囨敞鏇存敼娓╁害鏃讹紝鎺у埗鐨勬ā寮� private static int scenesId = 0;//鍙戝満鏅椂浼犲叆锛屾柟渚挎敹鍦烘櫙 @@ -53,12 +54,12 @@ this.ipAddr = ipAddr; } - public static void initData(){ + public static void initData() { zigbeeDeviceListBeans = new ArrayList<>();//鎼滅储鎴栨帶鍒舵椂鍊欓渶鍒濆鍖� } - public interface DataCallBack{ - void onSuccess( List<ZigbeeDeviceListBean> zigbeeDeviceListBeans,ZigbeeSceneListBean zigbeeSceneListBeans); + public interface DataCallBack { + void onSuccess(List<ZigbeeDeviceListBean> zigbeeDeviceListBeans, ZigbeeSceneListBean zigbeeSceneListBeans); } //澶勭悊鎺ユ敹鐨勬暟鎹� @@ -70,24 +71,24 @@ //鎵�鏈変俊鎭幏鍙栧畬澶勭悊 //閫夋嫨缃戝叧鐨勮瘽瑕佸湪鍒ゆ柇涓姞) - if (topic.contains("Scene/GetInfo_Respon")){ + if (topic.contains("Scene/GetInfo_Respon")) { //澶勭悊鎼滅储鍒扮殑鍦烘櫙 handleSceneList(message); } - if (topic.contains("DeviceInfoRespon")){ + if (topic.contains("DeviceInfoRespon")) { //澶勭悊鑾峰彇鍒扮殑璁惧 handleDeviceList(message); } - if (topic.contains("Scene/Open_Respon")){ + if (topic.contains("Scene/Open_Respon")) { //杩斿洖鍦烘櫙琚墽琛� reportSceneStatus(message); return; } - if (topic.contains("DeviceInfoResponEnd")&& - zigbeeDeviceListBeans.get(0).getData().getGwId().equals(gatewayId)){ + if (topic.contains("DeviceInfoResponEnd") && + zigbeeDeviceListBeans.get(0).getData().getGwId().equals(gatewayId)) { Log.d("11113", "绋嬪簭鎺ュ彈瀹岃繘鏉ュ鐞�: "); isFinished = true; } @@ -97,14 +98,14 @@ return; } - ZigbeeReportBean zigbeeReportBean =JsonUtil.parseJsonWithGson(message, ZigbeeReportBean.class); + ZigbeeReportBean zigbeeReportBean = JsonUtil.parseJsonWithGson(message, ZigbeeReportBean.class); int cluterId = zigbeeReportBean.getData().getCluterID(); - if (!(cluterId == 6 || cluterId==8 || cluterId == 258 || cluterId == 513 || cluterId == 514)) { + if (!(cluterId == 6 || cluterId == 8 || cluterId == 258 || cluterId == 513 || cluterId == 514)) { HDLLog.info("涓嶅鐞嗙殑cluterId:" + cluterId); return; } int deviceID = zigbeeReportBean.getDevice_ID(); - switch (deviceID){ + switch (deviceID) { case ZigbeeDeviceID.OnOffOutput: //鐏厜璁惧 StatusReadBackBean lightReadBackBean = new StatusReadBackBean(); @@ -121,28 +122,28 @@ } break; case ZigbeeDeviceID.WindowCoveringDevice: - //绐楀笜璁惧 - StatusReadBackBean curtainReadBackBean = new StatusReadBackBean(); - for (ZigbeeReportBean.DataBean.AttriButeBean attriButeBean : zigbeeReportBean.getData() - .getAttriBute()){ - if (attriButeBean.getAttriButeId() == 8){ - curtainReadBackBean.setValue(attriButeBean.getAttriButeData()); - } - } - String curtainReadBackJson = JsonUtil.toJson(curtainReadBackBean); - if (stateListener != null) { - StateEvent event = new StateEvent(curtainReadBackJson); - stateListener.onData(event); - } + //绐楀笜璁惧 + StatusReadBackBean curtainReadBackBean = new StatusReadBackBean(); + for (ZigbeeReportBean.DataBean.AttriButeBean attriButeBean : zigbeeReportBean.getData() + .getAttriBute()) { + if (attriButeBean.getAttriButeId() == 8) { + curtainReadBackBean.setValue(attriButeBean.getAttriButeData()); + } + } + String curtainReadBackJson = JsonUtil.toJson(curtainReadBackBean); + if (stateListener != null) { + StateEvent event = new StateEvent(curtainReadBackJson); + stateListener.onData(event); + } break; case ZigbeeDeviceID.DimmableLight: //璋冨厜鍣ㄨ澶� StatusReadBackBean dimmableLightReadBackBean = new StatusReadBackBean(); for (ZigbeeReportBean.DataBean.AttriButeBean attriButeBean : zigbeeReportBean.getData() .getAttriBute()) { - if (attriButeBean.getAttriButeId() == 0 && cluterId==8 ) { - Log.d("2222", "璋冨厜鍣ㄦ暟鎹�: "+attriButeBean.getAttriButeData()); - dimmableLightReadBackBean.setValue((int) (attriButeBean.getAttriButeData()/2.55)); + if (attriButeBean.getAttriButeId() == 0 && cluterId == 8) { + Log.d("2222", "璋冨厜鍣ㄦ暟鎹�: " + attriButeBean.getAttriButeData()); + dimmableLightReadBackBean.setValue((int) (attriButeBean.getAttriButeData() / 2.55)); } } String dimmableLightReadBackJson = JsonUtil.toJson(dimmableLightReadBackBean); @@ -153,42 +154,43 @@ break; case ZigbeeDeviceID.Thermostat: //绌鸿皟璁惧 - for (ZigbeeReportBean.DataBean.AttriButeBean attriButeBean:zigbeeReportBean.getData().getAttriBute()){ + for (ZigbeeReportBean.DataBean.AttriButeBean attriButeBean : zigbeeReportBean.getData().getAttriBute()) { - if (attriButeBean.getAttriButeId() == 28 && attriButeBean.getAttriButeDataType() == 48){ + if (attriButeBean.getAttriButeId() == 28 && attriButeBean.getAttriButeDataType() == 48) { //褰撳墠鐨勭┖璋冩ā寮� int thermostatmode = attriButeBean.getAttriButeData(); thermostatReadBackBean.setThermostatmode(thermostatmode); is1 = true; } - if (attriButeBean.getAttriButeId() == 0 && attriButeBean.getAttriButeDataType() == 0x30){ + if (attriButeBean.getAttriButeId() == 0 && attriButeBean.getAttriButeDataType() == 0x30) { //褰撳墠鐨勬柊椋庢ā寮� int fanmode = attriButeBean.getAttriButeData(); thermostatReadBackBean.setFanmode(fanmode); is2 = true; } - if (attriButeBean.getAttriButeId() == 17 && attriButeBean.getAttriButeDataType() == 41){ + if (attriButeBean.getAttriButeId() == 17 && attriButeBean.getAttriButeDataType() == 41) { //鍒跺喎娓╁害 - int coolingSetpoint = attriButeBean.getAttriButeData()/100; + int coolingSetpoint = attriButeBean.getAttriButeData() / 100; thermostatReadBackBean.setCoolingSetpoint(coolingSetpoint); //Log.d("11113", "鍒跺喎娓╁害涓�: "+coolingSetpoint); } - if (attriButeBean.getAttriButeId() == 18 && attriButeBean.getAttriButeDataType() == 41){ + if (attriButeBean.getAttriButeId() == 18 && attriButeBean.getAttriButeDataType() == 41) { //鍒剁儹娓╁害 - int heatingSetpoint = attriButeBean.getAttriButeData()/100; + int heatingSetpoint = attriButeBean.getAttriButeData() / 100; thermostatReadBackBean.setHeatingSetpoint(heatingSetpoint); //Log.d("11113", "鍒剁儹娓╁害涓�: "+heatingSetpoint); } } - if (is1 && is2 ){ //浠h〃鑾峰彇鎭掓俯鍣ㄥ拰椋庢墖鐨勭姸鎬佸悗鐨勫洖璋� - is1 = false;is2 = false; + if (is1 && is2) { //浠h〃鑾峰彇鎭掓俯鍣ㄥ拰椋庢墖鐨勭姸鎬佸悗鐨勫洖璋� + is1 = false; + is2 = false; thermostatReadBackBean.setTag(airTag); String thermostatReadJson = JsonUtil.toJson(thermostatReadBackBean); //Log.d("11113", "鏁版嵁鏁版嵁鏁版嵁"+thermostatReadJson); - if (stateListener != null ){ + if (stateListener != null) { StateEvent event = new StateEvent(thermostatReadJson); stateListener.onData(event); } @@ -197,8 +199,8 @@ case ZigbeeDeviceID.AirPanel: //鏂伴璁惧 StatusReadBackBean airPanelReadBackBean = new StatusReadBackBean(); - for (ZigbeeReportBean.DataBean.AttriButeBean attriButeBean : zigbeeReportBean.getData().getAttriBute()){ - if (attriButeBean.getAttriButeId() == 0 && attriButeBean.getAttriButeDataType() == 0x30){ + for (ZigbeeReportBean.DataBean.AttriButeBean attriButeBean : zigbeeReportBean.getData().getAttriBute()) { + if (attriButeBean.getAttriButeId() == 0 && attriButeBean.getAttriButeDataType() == 0x30) { //褰撳墠鐨勬柊椋庢ā寮� int fanmode = attriButeBean.getAttriButeData(); airPanelReadBackBean.setValue(fanmode); @@ -213,10 +215,10 @@ } } - public static void sendThirdPartyJson(final ZigbeeDeviceSaveBean zigbeeJson, String statusJson, int type){ + public static void sendThirdPartyJson(final ZigbeeDeviceSaveBean zigbeeJson, String statusJson, int type) { HDLZigbeeMqtt.connect1(ipAddr); // 鍒ゆ柇鏄痺rite 杩樻槸 read锛屾帶鍒舵椂鍒ゆ柇浼犻�掑弬鏁� - switch (type){ + switch (type) { case ZigbeeDeviceID.OnOffOutput: //缁х數鍣� GatewayCommondBean gatewayCommondBean = JsonUtil.parseJsonWithGson(statusJson, GatewayCommondBean.class); @@ -224,10 +226,10 @@ reportError("cmd parameter error, please check it out"); return; } - switch (gatewayCommondBean.getCmd()){ + switch (gatewayCommondBean.getCmd()) { case "write": // 鐏厜鎺у埗锛�0鍏� 1寮� - if (!(gatewayCommondBean.getValue()==1||gatewayCommondBean.getValue()==0)){ + if (!(gatewayCommondBean.getValue() == 1 || gatewayCommondBean.getValue() == 0)) { reportError("Wrong lighting control parameters"); return; } @@ -241,7 +243,7 @@ new Thread(new Runnable() { @Override public void run() { - HDLZigbeeMqtt.sendMqttData1( "DeviceControl", ctrlLightjson); + HDLZigbeeMqtt.sendMqttData1("DeviceControl", ctrlLightjson); } }).start(); break; @@ -272,14 +274,14 @@ return; } //绐楀笜鎺у埗 - switch (gatewayCurtainBean.getCmd()){ + switch (gatewayCurtainBean.getCmd()) { case "write": ZigbeeCtrlBean curtainCtrl = new ZigbeeCtrlBean(); curtainCtrl.setCluster_ID(258); int curtainCmd; - switch (gatewayCurtainBean.getTag()){ + switch (gatewayCurtainBean.getTag()) { case 0: - switch (gatewayCurtainBean.getValue()){ + switch (gatewayCurtainBean.getValue()) { case 0: curtainCmd = 0; break; @@ -328,53 +330,53 @@ curtainBean.setAttriBute(curtainAttriButeBeanList); curtainReadBean.setData(curtainBean); String curtainReadJson = JsonUtil.toJson(curtainReadBean); - HDLZigbeeMqtt.sendMqttData1("GetDeviceStatus",curtainReadJson); + HDLZigbeeMqtt.sendMqttData1("GetDeviceStatus", curtainReadJson); break; } break; - case ZigbeeDeviceID.DimmableLight: - //璋冨厜鐏� - GatewayCommondBean dimmableLightBean = JsonUtil.parseJsonWithGson(statusJson, GatewayCommondBean.class); - if (dimmableLightBean.getCmd() == null) { - reportError("cmd parameter error, please check it out"); - return; - } - switch (dimmableLightBean.getCmd()){ - case "write": - // 璋冨厜鎺у埗 - ZigbeeDimmableCtrlBean light = new ZigbeeDimmableCtrlBean(); - ZigbeeDimmableCtrlBean.Data data = new ZigbeeDimmableCtrlBean.Data(); - light.setCluster_ID(8); - light.setSendMode(2); - light.setCommand(4); - light.setDeviceAddr(zigbeeJson.getDeviceAddr()); - light.setEpoint(zigbeeJson.getEpoint()); - data.setLevel(dimmableLightBean.getValue()); - data.setTransitionTime(2); - light.setData(data); - String ctrlLightjson = JsonUtil.toJson(light); - HDLZigbeeMqtt.sendMqttData1( "DeviceControl", ctrlLightjson); - break; - case "read": - ZigbeeReadBean lightReadBean = new ZigbeeReadBean(); - lightReadBean.setDeviceAddr(zigbeeJson.getDeviceAddr()); - lightReadBean.setEpoint(zigbeeJson.getEpoint()); - lightReadBean.setCluster_ID(8); - lightReadBean.setCommand(108); - lightReadBean.setSendMode(2); + case ZigbeeDeviceID.DimmableLight: + //璋冨厜鐏� + GatewayCommondBean dimmableLightBean = JsonUtil.parseJsonWithGson(statusJson, GatewayCommondBean.class); + if (dimmableLightBean.getCmd() == null) { + reportError("cmd parameter error, please check it out"); + return; + } + switch (dimmableLightBean.getCmd()) { + case "write": + // 璋冨厜鎺у埗 + ZigbeeDimmableCtrlBean light = new ZigbeeDimmableCtrlBean(); + ZigbeeDimmableCtrlBean.Data data = new ZigbeeDimmableCtrlBean.Data(); + light.setCluster_ID(8); + light.setSendMode(2); + light.setCommand(4); + light.setDeviceAddr(zigbeeJson.getDeviceAddr()); + light.setEpoint(zigbeeJson.getEpoint()); + data.setLevel(dimmableLightBean.getValue()); + data.setTransitionTime(2); + light.setData(data); + String ctrlLightjson = JsonUtil.toJson(light); + HDLZigbeeMqtt.sendMqttData1("DeviceControl", ctrlLightjson); + break; + case "read": + ZigbeeReadBean lightReadBean = new ZigbeeReadBean(); + lightReadBean.setDeviceAddr(zigbeeJson.getDeviceAddr()); + lightReadBean.setEpoint(zigbeeJson.getEpoint()); + lightReadBean.setCluster_ID(8); + lightReadBean.setCommand(108); + lightReadBean.setSendMode(2); - ZigbeeReadBean.DataBean lightBean = new ZigbeeReadBean.DataBean(); - List<ZigbeeReadBean.DataBean.AttriButeBean> lightAttriButeBeanList = new ArrayList<>(); - ZigbeeReadBean.DataBean.AttriButeBean lightAttriButeBean = new ZigbeeReadBean.DataBean.AttriButeBean(); - lightAttriButeBean.setAttriButeId(0); - lightAttriButeBeanList.add(lightAttriButeBean); - lightBean.setAttriBute(lightAttriButeBeanList); - lightReadBean.setData(lightBean); - String lightReadJson = JsonUtil.toJson(lightReadBean); - HDLZigbeeMqtt.sendMqttData1("GetDeviceStatus", lightReadJson); - break; - } - break; + ZigbeeReadBean.DataBean lightBean = new ZigbeeReadBean.DataBean(); + List<ZigbeeReadBean.DataBean.AttriButeBean> lightAttriButeBeanList = new ArrayList<>(); + ZigbeeReadBean.DataBean.AttriButeBean lightAttriButeBean = new ZigbeeReadBean.DataBean.AttriButeBean(); + lightAttriButeBean.setAttriButeId(0); + lightAttriButeBeanList.add(lightAttriButeBean); + lightBean.setAttriBute(lightAttriButeBeanList); + lightReadBean.setData(lightBean); + String lightReadJson = JsonUtil.toJson(lightReadBean); + HDLZigbeeMqtt.sendMqttData1("GetDeviceStatus", lightReadJson); + break; + } + break; case ZigbeeDeviceID.Thermostat: //绌鸿皟 final GatewayCommondBean thermostatBean = JsonUtil.parseJsonWithGson(statusJson, GatewayCommondBean.class); @@ -382,17 +384,17 @@ reportError("cmd parameter error, please check it out"); return; } - switch (thermostatBean.getCmd()){ - case "write": - switch (airTag){ + switch (thermostatBean.getCmd()) { + case "write": + switch (airTag) { case 0://寮�鍏�,寮�鍏充紶鍏ュ紑鍏�01 - switch (thermostatBean.getValue()){ + switch (thermostatBean.getValue()) { case 0://绌鸿皟鍏� new Thread(new Runnable() { @Override public void run() { - sendFan(zigbeeJson,0);//鍙戦�侀鎵囨帶鍒� - sendThermostat(zigbeeJson,0);//鍙戦�佹亽娓╁櫒 + sendFan(zigbeeJson, 0);//鍙戦�侀鎵囨帶鍒� + sendThermostat(zigbeeJson, 0);//鍙戦�佹亽娓╁櫒 } }).start(); break; @@ -400,8 +402,8 @@ new Thread(new Runnable() { @Override public void run() { - sendThermostat(zigbeeJson,1); - sendFan(zigbeeJson,4); + sendThermostat(zigbeeJson, 1); + sendFan(zigbeeJson, 4); } }).start(); @@ -412,7 +414,7 @@ new Thread(new Runnable() { @Override public void run() { - sendThermostat(zigbeeJson,thermostatBean.getValue()); + sendThermostat(zigbeeJson, thermostatBean.getValue()); } }).start(); break; @@ -420,17 +422,17 @@ new Thread(new Runnable() { @Override public void run() { - sendFan(zigbeeJson,thermostatBean.getValue()); + sendFan(zigbeeJson, thermostatBean.getValue()); } }).start(); break; case 3://鎺у埗娓╁害 - switch (airMode){ + switch (airMode) { case 0://鍒剁儹 new Thread(new Runnable() { @Override public void run() { - contrlThermostat(zigbeeJson,thermostatBean.getValue(),0); + contrlThermostat(zigbeeJson, thermostatBean.getValue(), 0); } }).start(); break; @@ -438,7 +440,7 @@ new Thread(new Runnable() { @Override public void run() { - contrlThermostat(zigbeeJson,thermostatBean.getValue(),1); + contrlThermostat(zigbeeJson, thermostatBean.getValue(), 1); } }).start(); break; @@ -446,7 +448,7 @@ new Thread(new Runnable() { @Override public void run() { - contrlThermostat(zigbeeJson,thermostatBean.getValue(),2); + contrlThermostat(zigbeeJson, thermostatBean.getValue(), 2); } }).start(); break; @@ -493,9 +495,9 @@ reportError("cmd parameter error, please check it out"); return; } - switch (airpanelBean.getCmd()){ - case "write": - sendNewFan(zigbeeJson,airpanelBean.getValue()); + switch (airpanelBean.getCmd()) { + case "write": + sendNewFan(zigbeeJson, airpanelBean.getValue()); break; case "read": readFan(zigbeeJson); @@ -507,49 +509,50 @@ } //鍒濆鍖栫姸鎬佷俊鎭� - public static void initStatus(final ZigbeeDeviceSaveBean zigbeeDevice, final int type){ + public static void initStatus(final ZigbeeDeviceSaveBean zigbeeDevice, final int type) { initData(); airTag = 0; new Thread(new Runnable() { @Override public void run() { - String sendStatus = HDLCommandText.setSendStatus("read",0);//璇讳笉闇�瑕佺煡閬撶姸鎬侊紝闅忎究濉竴涓� - HDLCommandText.sendThirdPartyJson(zigbeeDevice,sendStatus, type); + String sendStatus = HDLCommandText.setSendStatus("read", 0);//璇讳笉闇�瑕佺煡閬撶姸鎬侊紝闅忎究濉竴涓� + HDLCommandText.sendThirdPartyJson(zigbeeDevice, sendStatus, type); } }).start(); } //鏇存柊绌鸿皟鐘舵�� - public static void initAirStatus(final ZigbeeDeviceSaveBean zigbeeDevice,final int type ,int tag){ + public static void initAirStatus(final ZigbeeDeviceSaveBean zigbeeDevice, final int type, int tag) { airTag = tag; - String sendStatus = HDLCommandText.setSendStatus("read",0);//璇讳笉闇�瑕佺煡閬撶姸鎬侊紝闅忎究濉竴涓� - HDLCommandText.sendThirdPartyJson(zigbeeDevice,sendStatus, type); + String sendStatus = HDLCommandText.setSendStatus("read", 0);//璇讳笉闇�瑕佺煡閬撶姸鎬侊紝闅忎究濉竴涓� + HDLCommandText.sendThirdPartyJson(zigbeeDevice, sendStatus, type); } //鍙戦�佺┖璋冩帶鍒� - public static void sendAirStatus(final ZigbeeDeviceSaveBean zigbeeDevice,final int type ,final int value, - int tag,int mode){ - airTag = tag; airMode = mode; - String sendStatus = HDLCommandText.setSendStatus("write",value); - HDLCommandText.sendThirdPartyJson(zigbeeDevice,sendStatus,type); + public static void sendAirStatus(final ZigbeeDeviceSaveBean zigbeeDevice, final int type, final int value, + int tag, int mode) { + airTag = tag; + airMode = mode; + String sendStatus = HDLCommandText.setSendStatus("write", value); + HDLCommandText.sendThirdPartyJson(zigbeeDevice, sendStatus, type); } //鍙戦�佸紑鍏虫帶鍒舵帶鍒� - public static void sendStatus(final ZigbeeDeviceSaveBean zigbeeDevice,final int type,final int value){ - String sendStatus = HDLCommandText.setSendStatus("write",value); - HDLCommandText.sendThirdPartyJson(zigbeeDevice,sendStatus,type); + public static void sendStatus(final ZigbeeDeviceSaveBean zigbeeDevice, final int type, final int value) { + String sendStatus = HDLCommandText.setSendStatus("write", value); + HDLCommandText.sendThirdPartyJson(zigbeeDevice, sendStatus, type); } //鍒濆鍖栫獥甯樻帶鍒� - public static void sendCurtainStatus(final ZigbeeDeviceSaveBean zigbeeDevice,final int type, - final int value,final int tag){ - String sendStatus = HDLCommandText.setSendCurtainStatus("write",value,tag); - HDLCommandText.sendThirdPartyJson(zigbeeDevice,sendStatus,type); + public static void sendCurtainStatus(final ZigbeeDeviceSaveBean zigbeeDevice, final int type, + final int value, final int tag) { + String sendStatus = HDLCommandText.setSendCurtainStatus("write", value, tag); + HDLCommandText.sendThirdPartyJson(zigbeeDevice, sendStatus, type); } //璁剧疆缁х數鍣ㄧ殑鐘舵�� - private static String setSendStatus(String status,int value){ + private static String setSendStatus(String status, int value) { GatewayCommondBean gatewayCommondBean = new GatewayCommondBean(); gatewayCommondBean.setCmd(status); gatewayCommondBean.setValue(value); @@ -558,7 +561,7 @@ } //璁剧疆绐楀笜鐨勭姸鎬� - private static String setSendCurtainStatus(String status,int value,int tag){ + private static String setSendCurtainStatus(String status, int value, int tag) { GatewayCurtainBean gatewayCurtainBean = new GatewayCurtainBean(); gatewayCurtainBean.setCmd(status); gatewayCurtainBean.setValue(value); @@ -568,7 +571,7 @@ } //鍙戦�佹亽娓╁櫒妯″紡 - private static void sendThermostat(ZigbeeDeviceSaveBean zigbeeJson,int value){ + private static void sendThermostat(ZigbeeDeviceSaveBean zigbeeJson, int value) { ZigbeeWriteCtrlBean zigbeeOffBean = new ZigbeeWriteCtrlBean(); zigbeeOffBean.setDeviceAddr(zigbeeJson.getDeviceAddr()); zigbeeOffBean.setEpoint(zigbeeJson.getEpoint()); @@ -580,12 +583,12 @@ zigbeeOffDataBean.setAttributeData(value); zigbeeOffBean.setData(zigbeeOffDataBean); String zigbeeoffJson = JsonUtil.toJson(zigbeeOffBean); - HDLZigbeeMqtt.sendMqttData1("SetWritableValue",zigbeeoffJson); - initAirStatus(zigbeeJson,ZigbeeDeviceID.Thermostat,airTag); + HDLZigbeeMqtt.sendMqttData1("SetWritableValue", zigbeeoffJson); + initAirStatus(zigbeeJson, ZigbeeDeviceID.Thermostat, airTag); } //鍙戦�侀妯″紡 - private static void sendFan(final ZigbeeDeviceSaveBean zigbeeJson, int value){ + private static void sendFan(final ZigbeeDeviceSaveBean zigbeeJson, int value) { ZigbeeWriteCtrlBean zigbeeOffBean = new ZigbeeWriteCtrlBean(); zigbeeOffBean.setDeviceAddr(zigbeeJson.getDeviceAddr()); zigbeeOffBean.setEpoint(zigbeeJson.getEpoint()); @@ -597,12 +600,12 @@ zigbeeOffDataBean.setAttributeData(value); zigbeeOffBean.setData(zigbeeOffDataBean); String zigbeeoffJson = JsonUtil.toJson(zigbeeOffBean); - HDLZigbeeMqtt.sendMqttData1("SetWritableValue",zigbeeoffJson); - initAirStatus(zigbeeJson,ZigbeeDeviceID.Thermostat,airTag); + HDLZigbeeMqtt.sendMqttData1("SetWritableValue", zigbeeoffJson); + initAirStatus(zigbeeJson, ZigbeeDeviceID.Thermostat, airTag); } //鏂伴鐘舵�佷笅鍙戦�佹柊椋庢ā寮� - private static void sendNewFan(final ZigbeeDeviceSaveBean zigbeeJson, int value){ + private static void sendNewFan(final ZigbeeDeviceSaveBean zigbeeJson, int value) { ZigbeeWriteCtrlBean zigbeeOffBean = new ZigbeeWriteCtrlBean(); zigbeeOffBean.setDeviceAddr(zigbeeJson.getDeviceAddr()); zigbeeOffBean.setEpoint(zigbeeJson.getEpoint()); @@ -614,12 +617,12 @@ zigbeeOffDataBean.setAttributeData(value); zigbeeOffBean.setData(zigbeeOffDataBean); String zigbeeoffJson = JsonUtil.toJson(zigbeeOffBean); - HDLZigbeeMqtt.sendMqttData1("SetWritableValue",zigbeeoffJson); - initStatus(zigbeeJson,ZigbeeDeviceID.AirPanel); + HDLZigbeeMqtt.sendMqttData1("SetWritableValue", zigbeeoffJson); + initStatus(zigbeeJson, ZigbeeDeviceID.AirPanel); } //娓╁害鎺у埗 - private static void contrlThermostat(ZigbeeDeviceSaveBean zigbeeJson,int value, int mode){ + private static void contrlThermostat(ZigbeeDeviceSaveBean zigbeeJson, int value, int mode) { ZigbeeThermostatCtrlBean zigbeeThermostatCtrlBean = new ZigbeeThermostatCtrlBean(); zigbeeThermostatCtrlBean.setDeviceAddr(zigbeeJson.getDeviceAddr()); zigbeeThermostatCtrlBean.setEpoint(zigbeeJson.getEpoint()); @@ -631,12 +634,12 @@ zigbeeData.setAmount(value); zigbeeThermostatCtrlBean.setData(zigbeeData); String zigbeeCtrlJson = JsonUtil.toJson(zigbeeThermostatCtrlBean); - HDLZigbeeMqtt.sendMqttData1("DeviceControl",zigbeeCtrlJson); - initAirStatus(zigbeeJson,ZigbeeDeviceID.Thermostat,airTag); + HDLZigbeeMqtt.sendMqttData1("DeviceControl", zigbeeCtrlJson); + initAirStatus(zigbeeJson, ZigbeeDeviceID.Thermostat, airTag); } //鏌ョ湅椋庨�� - private static void readFan(ZigbeeDeviceSaveBean zigbeeJson){ + private static void readFan(ZigbeeDeviceSaveBean zigbeeJson) { //鑾峰彇褰撳墠閫氶淇℃伅 ZigbeeReadBean fanBean = new ZigbeeReadBean(); @@ -657,7 +660,7 @@ } //鍙戦�佸満鏅暟鎹� - public static void sendSceneStatus(int ScenesId,int DelayTime){ + public static void sendSceneStatus(int ScenesId, int DelayTime) { scenesId = ScenesId; ZigbeeSceneCtrlBean zigbeeSceneCtrlBean = new ZigbeeSceneCtrlBean(); zigbeeSceneCtrlBean.setCluster_ID(0); @@ -667,19 +670,19 @@ dataBean.setDelayTime(DelayTime); zigbeeSceneCtrlBean.setData(dataBean); String json = JsonUtil.toJson(zigbeeSceneCtrlBean); - HDLZigbeeMqtt.sendMqttData1("Scene/Open",json); + HDLZigbeeMqtt.sendMqttData1("Scene/Open", json); } //澶勭悊璁惧淇℃伅 private static void handleDeviceList(String message) { - ZigbeeDeviceListBean zigbeeDeviceListBean = JsonUtil.parseJsonWithGson(message,ZigbeeDeviceListBean.class); + ZigbeeDeviceListBean zigbeeDeviceListBean = JsonUtil.parseJsonWithGson(message, ZigbeeDeviceListBean.class); zigbeeDeviceListBeans.add(zigbeeDeviceListBean); } //澶勭悊鍦烘櫙淇℃伅 private static void handleSceneList(String message) { Gson gson = new Gson(); - zigbeeSceneListBean = gson.fromJson(message,ZigbeeSceneListBean.class); + zigbeeSceneListBean = gson.fromJson(message, ZigbeeSceneListBean.class); } //澶勭悊鍦烘櫙鐨勬暟鎹� @@ -690,11 +693,11 @@ return; } StatusReadBackBean statusReadBackBean = new StatusReadBackBean(); - if (sceneCtrlBackBean.getData().getScenesId() == scenesId){ + if (sceneCtrlBackBean.getData().getScenesId() == scenesId) { statusReadBackBean.setValue(sceneCtrlBackBean.getData().getResult()); } String Json = JsonUtil.toJson(statusReadBackBean); - Log.d("11114", "澶勭悊鏁版嵁鍥炶皟: "+Json); + Log.d("11114", "澶勭悊鏁版嵁鍥炶皟: " + Json); if (stateListener != null) { StateEvent event = new StateEvent(Json); stateListener.onData(event); @@ -702,25 +705,26 @@ } //鍥炶皟鑾峰彇鍒扮殑璁惧淇℃伅 - public static void handleDeviceData(final DataCallBack dataCallBack){ + public static void handleDeviceData(final DataCallBack dataCallBack) { timer = new Timer(); timer.schedule(new TimerTask() { @Override public void run() { - if (!isFinished){ + if (!isFinished) { Log.d("11112", "run: 绋嬪簭鎵ц涓�"); - }else { + } else { timer.cancel(); timer.purge(); timer = null; isFinished = false; - dataCallBack.onSuccess(zigbeeDeviceListBeans,zigbeeSceneListBean); + dataCallBack.onSuccess(zigbeeDeviceListBeans, zigbeeSceneListBean); } } - },1,500); + }, 1, 500); } - public static void reSearch(){ - if (timer != null){ + + public static void reSearch() { + if (timer != null) { timer.cancel(); timer.purge(); timer = null; @@ -734,7 +738,7 @@ CommonErrorBean errorBean = new CommonErrorBean(); errorBean.setCmd("error"); errorBean.setReason(reason); - String errorJson =JsonUtil.toJson(errorBean); + String errorJson = JsonUtil.toJson(errorBean); StateEvent event = new StateEvent(errorJson); stateListener.onData(event); } diff --git a/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLZigbeeMqtt.java b/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLZigbeeMqtt.java index 2495919..6c3a3b4 100644 --- a/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLZigbeeMqtt.java +++ b/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLZigbeeMqtt.java @@ -9,6 +9,7 @@ import org.eclipse.paho.client.mqttv3.MqttException; import org.eclipse.paho.client.mqttv3.MqttMessage; import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence; + import com.hdl.sdk.hdl_core.HDLDeviceManger.Callback.PushCallback; import com.hdl.sdk.hdl_core.Util.LogUtil.HDLLog; @@ -17,7 +18,8 @@ private static final String clientid = "HDLZigbeeDriver"; private static MqttClient client; - private static boolean isCancel = false; + private static boolean isCancel = false; + public static void setIsCancel(boolean isCancel) { HDLZigbeeMqtt.isCancel = isCancel; } @@ -28,25 +30,25 @@ */ public static void connect1(String host) { try { - client = new MqttClient("tcp://"+host+":1883", clientid, new MemoryPersistence()); - MqttConnectOptions options = new MqttConnectOptions(); - options.setCleanSession(false); - options.setUserName("admin"); - options.setPassword("password".toCharArray()); - //璁剧疆鑷姩閲嶈繛 - options.setAutomaticReconnect(true); - // 璁剧疆瓒呮椂鏃堕棿 - options.setConnectionTimeout(10); - // 璁剧疆浼氳瘽蹇冭烦鏃堕棿 - options.setKeepAliveInterval(20); - PushCallback pushCallback = new PushCallback(); - pushCallback.setHost(host); - client.setCallback(pushCallback); - client.connect(options); - if (isCancel){ - client.close(); - isCancel = false; - } + client = new MqttClient("tcp://" + host + ":1883", clientid, new MemoryPersistence()); + MqttConnectOptions options = new MqttConnectOptions(); + options.setCleanSession(false); + options.setUserName("admin"); + options.setPassword("password".toCharArray()); + //璁剧疆鑷姩閲嶈繛 + options.setAutomaticReconnect(true); + // 璁剧疆瓒呮椂鏃堕棿 + options.setConnectionTimeout(10); + // 璁剧疆浼氳瘽蹇冭烦鏃堕棿 + options.setKeepAliveInterval(20); + PushCallback pushCallback = new PushCallback(); + pushCallback.setHost(host); + client.setCallback(pushCallback); + client.connect(options); + if (isCancel) { + client.close(); + isCancel = false; + } } catch (MqttException e) { e.printStackTrace(); } @@ -55,9 +57,9 @@ /** * 鍙戦�乵qtt淇℃伅 */ - public static void sendMqttData1(String topic, String json) { - HDLLog.info("send Mqtt to gateway:"+json); - Log.d("111133", "sendMqttData1: "+json); + public static void sendMqttData1(String topic, String json) { + HDLLog.info("send Mqtt to gateway:" + json); + Log.d("111133", "sendMqttData1: " + json); try { MqttMessage message = new MqttMessage(); message.setQos(2); @@ -68,7 +70,7 @@ Log.d("111133", "宸茬粡鍙戦��"); HDLLog.info("message is published completely!"); } catch (MqttException e) { - Log.d("111133", "sendMqttData1: "+e.getMessage()); + Log.d("111133", "sendMqttData1: " + e.getMessage()); HDLLog.info("鍙戦�乵qtt淇℃伅鍑洪敊"); e.printStackTrace(); } diff --git a/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/SearchZigbeeGateway.java b/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/SearchZigbeeGateway.java index c7c367d..11018a1 100644 --- a/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/SearchZigbeeGateway.java +++ b/Android_HDL_SDK_XW/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/SearchZigbeeGateway.java @@ -12,7 +12,6 @@ import java.util.TimerTask; - import com.hdl.sdk.hdl_core.HDLDeviceManger.Bean.ZigbeeBean.ZigbeeGatewayInfoBean; import com.hdl.sdk.hdl_core.HDLDeviceManger.Callback.PushCallback; import com.hdl.sdk.hdl_core.Util.LogUtil.HDLLog; @@ -30,13 +29,15 @@ public static Timer searchTimer = null; private static DatagramSocket datagramSocket; // 鏁版嵁鎶ュ鎺ュ瓧 private static boolean isStop = false; - public interface OnSearchListener{ - void onSuccess( List<ZigbeeGatewayInfoBean> zigbeeGatewayInfoBeanList); - void onEorror(Exception e); + + public interface OnSearchListener { + void onSuccess(List<ZigbeeGatewayInfoBean> zigbeeGatewayInfoBeanList); + + void onEorror(Exception e); } public static void release() { - if (datagramSocket != null){ + if (datagramSocket != null) { isStop = true; datagramSocket.disconnect(); datagramSocket = null; @@ -58,99 +59,99 @@ public void run() { if (zigbeeGatewayInfoBean.getCount() < 20) { zigbeeGatewayInfoBean.setCount(zigbeeGatewayInfoBean.getCount() + 1); - try { - byte[] sendBytes = new byte[44]; - sendBytes[0] = (byte) 0xFE; - sendBytes[1] = 0x29; - sendBytes[2] = 0; - sendBytes[3] = 0; - sendBytes[4] = 0; - sendBytes[5] = 0; - sendBytes[6] = 0; - //鑾峰彇鎵�鏈夌綉鍏筹紙鏃犻渶houseID妯″紡锛夛紝鍚庨潰瑕佹敼 - sendBytes[7] = 0x67; - sendBytes[8] = 0x65; - sendBytes[9] = 0x74; - sendBytes[10] = 0x61; - sendBytes[11] = 0x6c; - sendBytes[12] = 0x6c; - sendBytes[13] = 0x67; - sendBytes[14] = 0x77; - for (int i = 15; i<sendBytes.length-1;i++){ - sendBytes[i] = 0; - } - sendBytes[sendBytes.length - 1] = 0x02; - //Log.d(TAG, "sendBytes: "+StringUtil.ByteArrToHex(sendBytes,0,sendBytes.length)); - InetAddress address = InetAddress.getByName(NetWorkUtil.getLocalBroadCast()); - DatagramPacket packet = new DatagramPacket( - sendBytes, - sendBytes.length, - address, 7624); - datagramSocket= new DatagramSocket(); - datagramSocket.send(packet); + try { + byte[] sendBytes = new byte[44]; + sendBytes[0] = (byte) 0xFE; + sendBytes[1] = 0x29; + sendBytes[2] = 0; + sendBytes[3] = 0; + sendBytes[4] = 0; + sendBytes[5] = 0; + sendBytes[6] = 0; + //鑾峰彇鎵�鏈夌綉鍏筹紙鏃犻渶houseID妯″紡锛夛紝鍚庨潰瑕佹敼 + sendBytes[7] = 0x67; + sendBytes[8] = 0x65; + sendBytes[9] = 0x74; + sendBytes[10] = 0x61; + sendBytes[11] = 0x6c; + sendBytes[12] = 0x6c; + sendBytes[13] = 0x67; + sendBytes[14] = 0x77; + for (int i = 15; i < sendBytes.length - 1; i++) { + sendBytes[i] = 0; + } + sendBytes[sendBytes.length - 1] = 0x02; + //Log.d(TAG, "sendBytes: "+StringUtil.ByteArrToHex(sendBytes,0,sendBytes.length)); + InetAddress address = InetAddress.getByName(NetWorkUtil.getLocalBroadCast()); + DatagramPacket packet = new DatagramPacket( + sendBytes, + sendBytes.length, + address, 7624); + datagramSocket = new DatagramSocket(); + datagramSocket.send(packet); - byte[] receiveBytes = new byte[1024]; - DatagramPacket dataPacket = new DatagramPacket(receiveBytes, receiveBytes.length); - datagramSocket.receive(dataPacket); - //鏄惁涓荤綉鍏�-01涓轰富缃戝叧-00涓轰粠缃戝叧 - String IsDomain = StringUtil.Byte2Hex(dataPacket.getData()[44]); - int headLength = 1 + 2 + 4 + 36 + 1 + 1 + 4 ; - if (receiveBytes.length > headLength) { - //缃戝叧鍚嶇О闀垮害 - String str = StringUtil.Byte2Hex(dataPacket.getData()[49]); - int GwNameLength = Integer.parseInt(str,16); + byte[] receiveBytes = new byte[1024]; + DatagramPacket dataPacket = new DatagramPacket(receiveBytes, receiveBytes.length); + datagramSocket.receive(dataPacket); + //鏄惁涓荤綉鍏�-01涓轰富缃戝叧-00涓轰粠缃戝叧 + String IsDomain = StringUtil.Byte2Hex(dataPacket.getData()[44]); + int headLength = 1 + 2 + 4 + 36 + 1 + 1 + 4; + if (receiveBytes.length > headLength) { + //缃戝叧鍚嶇О闀垮害 + String str = StringUtil.Byte2Hex(dataPacket.getData()[49]); + int GwNameLength = Integer.parseInt(str, 16); - //缃戝叧鍚嶇О - byte[] gwnamebyte = new byte[GwNameLength]; - for (int i = 0 ;i< GwNameLength ; i++){ - gwnamebyte[i] = dataPacket.getData()[i+50]; - } - String GwName =new String(gwnamebyte,0,gwnamebyte.length); - - //缃戝叧id闀垮害 - String str1 = StringUtil.Byte2Hex(dataPacket.getData()[50+GwNameLength]); - int GwIdLength = Integer.parseInt(str1,16); - - //鑾峰彇缃戝叧id - byte[] gatewayId = new byte[GwIdLength]; - for (int i = 0 ;i< GwIdLength ; i++){ - gatewayId[i] = dataPacket.getData()[i+51+GwNameLength]; - } - - if (gatewayId.length > 1) { - String stringGateWayId = new String(gatewayId,0,gatewayId.length); - Log.d(TAG, "缃戝叧id: "+stringGateWayId); - - ZigbeeGatewayInfoBean zigbeeGatewayInfoBean = new ZigbeeGatewayInfoBean(); - zigbeeGatewayInfoBean.setGatewayId(stringGateWayId); - zigbeeGatewayInfoBean.setIpAddress(dataPacket.getAddress().getHostAddress()); - if (IsDomain.equals("01")){ - zigbeeGatewayInfoBean.setDomain(true); - }else { - zigbeeGatewayInfoBean.setDomain(false); - } - zigbeeGatewayInfoBean.setGatewayName(GwName); - boolean isExit = false; - for (int i = 0; i < zigbeeGatewayInfoBeanList.size(); i++) { - if (zigbeeGatewayInfoBeanList.get(i).getGatewayId() - .equals(zigbeeGatewayInfoBean.getGatewayId())) { - isExit = true; - break; - } - } - if (!isExit) { - zigbeeGatewayInfoBeanList.add(zigbeeGatewayInfoBean); - Log.d(TAG, "addList:鎴愬姛娣诲姞 "); - } - } - } - datagramSocket.close(); - } catch (Exception e) { - Log.d(TAG, "run: "+e.toString()); - e.printStackTrace(); - datagramSocket.close(); - onSearchListener.onEorror(e); + //缃戝叧鍚嶇О + byte[] gwnamebyte = new byte[GwNameLength]; + for (int i = 0; i < GwNameLength; i++) { + gwnamebyte[i] = dataPacket.getData()[i + 50]; } + String GwName = new String(gwnamebyte, 0, gwnamebyte.length); + + //缃戝叧id闀垮害 + String str1 = StringUtil.Byte2Hex(dataPacket.getData()[50 + GwNameLength]); + int GwIdLength = Integer.parseInt(str1, 16); + + //鑾峰彇缃戝叧id + byte[] gatewayId = new byte[GwIdLength]; + for (int i = 0; i < GwIdLength; i++) { + gatewayId[i] = dataPacket.getData()[i + 51 + GwNameLength]; + } + + if (gatewayId.length > 1) { + String stringGateWayId = new String(gatewayId, 0, gatewayId.length); + Log.d(TAG, "缃戝叧id: " + stringGateWayId); + + ZigbeeGatewayInfoBean zigbeeGatewayInfoBean = new ZigbeeGatewayInfoBean(); + zigbeeGatewayInfoBean.setGatewayId(stringGateWayId); + zigbeeGatewayInfoBean.setIpAddress(dataPacket.getAddress().getHostAddress()); + if (IsDomain.equals("01")) { + zigbeeGatewayInfoBean.setDomain(true); + } else { + zigbeeGatewayInfoBean.setDomain(false); + } + zigbeeGatewayInfoBean.setGatewayName(GwName); + boolean isExit = false; + for (int i = 0; i < zigbeeGatewayInfoBeanList.size(); i++) { + if (zigbeeGatewayInfoBeanList.get(i).getGatewayId() + .equals(zigbeeGatewayInfoBean.getGatewayId())) { + isExit = true; + break; + } + } + if (!isExit) { + zigbeeGatewayInfoBeanList.add(zigbeeGatewayInfoBean); + Log.d(TAG, "addList:鎴愬姛娣诲姞 "); + } + } + } + datagramSocket.close(); + } catch (Exception e) { + Log.d(TAG, "run: " + e.toString()); + e.printStackTrace(); + datagramSocket.close(); + onSearchListener.onEorror(e); + } } else { if (searchTimer != null) { //鎵ц瀹屾悳绱㈠悗鍒拌繖 diff --git a/Android_HDL_SDK_XW/hdl_core/src/test/java/com/hdl/sdk/hdl_core/ExampleUnitTest.java b/Android_HDL_SDK_XW/hdl_core/src/test/java/com/hdl/sdk/hdl_core/ExampleUnitTest.java deleted file mode 100644 index 1ac296d..0000000 --- a/Android_HDL_SDK_XW/hdl_core/src/test/java/com/hdl/sdk/hdl_core/ExampleUnitTest.java +++ /dev/null @@ -1,17 +0,0 @@ -package com.hdl.sdk.hdl_core; - -import org.junit.Test; - -import static org.junit.Assert.*; - -/** - * Example local unit test, which will execute on the development machine (host). - * - * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - */ -public class ExampleUnitTest { - @Test - public void addition_isCorrect() { - assertEquals(4, 2 + 2); - } -} \ No newline at end of file diff --git a/Android_HDL_SDK_XW/hdl_core/libs/org.eclipse.paho.client.mqttv3-1.2.0.jar b/org.eclipse.paho.client.mqttv3-1.2.0.jar similarity index 100% rename from Android_HDL_SDK_XW/hdl_core/libs/org.eclipse.paho.client.mqttv3-1.2.0.jar rename to org.eclipse.paho.client.mqttv3-1.2.0.jar Binary files differ diff --git a/org.eclipse.paho.client.mqttv3-1.2.5.jar b/org.eclipse.paho.client.mqttv3-1.2.5.jar new file mode 100644 index 0000000..66f1278 --- /dev/null +++ b/org.eclipse.paho.client.mqttv3-1.2.5.jar Binary files differ diff --git "a/\346\211\223\345\214\205aar/2020-09-23/HDL_ZigBeeSDK_V1.0.1.B1.20200923.aar" "b/\346\211\223\345\214\205aar/2020-09-23/HDL_ZigBeeSDK_V1.0.1.B1.20200923.aar" new file mode 100644 index 0000000..d2f7d80 --- /dev/null +++ "b/\346\211\223\345\214\205aar/2020-09-23/HDL_ZigBeeSDK_V1.0.1.B1.20200923.aar" Binary files differ -- Gitblit v1.8.0