From bdec7373b358239521703995c5220e995dee289c Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期四, 05 三月 2020 14:20:42 +0800
Subject: [PATCH] 2020-03-05 1.增加简易编程搜索回复
---
app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java | 9
app/src/main/res/layout/activity_setting.xml | 162 ++++++++++++++++
app/src/main/java/com/hdl/sdk/hdl_sdk/activity/SettingActivity.java | 138 +++++++++++++
app/src/main/res/values/strings.xml | 5
hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java | 4
hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/SPUtil/SPUtils.java | 6
app/src/main/AndroidManifest.xml | 3
app/src/main/res/layout/activity_main.xml | 15 +
hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLUdpCore.java | 2
hdl_core/build.gradle | 2
.idea/codeStyles/Project.xml | 116 +++++++++++
hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLDeviceManager.java | 119 +++++++++--
12 files changed, 556 insertions(+), 25 deletions(-)
diff --git a/.idea/codeStyles/Project.xml b/.idea/codeStyles/Project.xml
new file mode 100644
index 0000000..681f41a
--- /dev/null
+++ b/.idea/codeStyles/Project.xml
@@ -0,0 +1,116 @@
+<component name="ProjectCodeStyleConfiguration">
+ <code_scheme name="Project" version="173">
+ <codeStyleSettings language="XML">
+ <indentOptions>
+ <option name="CONTINUATION_INDENT_SIZE" value="4" />
+ </indentOptions>
+ <arrangement>
+ <rules>
+ <section>
+ <rule>
+ <match>
+ <AND>
+ <NAME>xmlns:android</NAME>
+ <XML_ATTRIBUTE />
+ <XML_NAMESPACE>^$</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ </section>
+ <section>
+ <rule>
+ <match>
+ <AND>
+ <NAME>xmlns:.*</NAME>
+ <XML_ATTRIBUTE />
+ <XML_NAMESPACE>^$</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ </section>
+ <section>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*:id</NAME>
+ <XML_ATTRIBUTE />
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ </section>
+ <section>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*:name</NAME>
+ <XML_ATTRIBUTE />
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ </section>
+ <section>
+ <rule>
+ <match>
+ <AND>
+ <NAME>name</NAME>
+ <XML_ATTRIBUTE />
+ <XML_NAMESPACE>^$</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ </section>
+ <section>
+ <rule>
+ <match>
+ <AND>
+ <NAME>style</NAME>
+ <XML_ATTRIBUTE />
+ <XML_NAMESPACE>^$</XML_NAMESPACE>
+ </AND>
+ </match>
+ </rule>
+ </section>
+ <section>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*</NAME>
+ <XML_ATTRIBUTE />
+ <XML_NAMESPACE>^$</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ </section>
+ <section>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*</NAME>
+ <XML_ATTRIBUTE />
+ <XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>ANDROID_ATTRIBUTE_ORDER</order>
+ </rule>
+ </section>
+ <section>
+ <rule>
+ <match>
+ <AND>
+ <NAME>.*</NAME>
+ <XML_ATTRIBUTE />
+ <XML_NAMESPACE>.*</XML_NAMESPACE>
+ </AND>
+ </match>
+ <order>BY_NAME</order>
+ </rule>
+ </section>
+ </rules>
+ </arrangement>
+ </codeStyleSettings>
+ </code_scheme>
+</component>
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 808a4de..9de0ad7 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -18,7 +18,8 @@
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
- <activity android:name=".activity.AddDevicesManuallyActivity"></activity>
+ <activity android:name=".activity.SettingActivity"></activity>
+ <activity android:name=".activity.AddDevicesManuallyActivity" />
<activity android:name=".activity.MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
diff --git a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java
index 538b2d3..0118cef 100644
--- a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java
+++ b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/MainActivity.java
@@ -42,6 +42,7 @@
private Button btn, btn2;
private Button btn_get_all,btn_on_all, btn_off_all,btn_getlocal,btn_getlocal_add;
+ private Button btn_setting;
private TextView tv;
private EditText editText;
private List<DevicesData> devicesDatas;
@@ -81,6 +82,7 @@
btn_getlocal_add = findViewById(R.id.btn_getlocal_add);
+ btn_setting = findViewById(R.id.btn_setting);
tv = findViewById(R.id.tv);
editText = findViewById(R.id.edt);
editText.setText("172.168.188.100");
@@ -171,6 +173,13 @@
}
});
+
+ btn_setting.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ startActivity(SettingActivity.class);
+ }
+ });
}
public void startActivity(Class<?> clazz) {
diff --git a/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/SettingActivity.java b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/SettingActivity.java
new file mode 100644
index 0000000..28707df
--- /dev/null
+++ b/app/src/main/java/com/hdl/sdk/hdl_sdk/activity/SettingActivity.java
@@ -0,0 +1,138 @@
+package com.hdl.sdk.hdl_sdk.activity;
+
+import android.app.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 android.widget.Toast;
+
+import com.hdl.sdk.hdl_core.HDLDeviceManger.Core.HDLCommand;
+import com.hdl.sdk.hdl_core.HDLDeviceManger.Core.HDLDeviceManager;
+import com.hdl.sdk.hdl_core.Util.SPUtil.SPUtils;
+import com.hdl.sdk.hdl_sdk.R;
+
+
+/**
+ * Created by JLChen on 2020-03-02
+ * 褰撳墠APP璁惧瀛愮綉鍙峰拰璁惧鍙烽厤缃紝鏍规嵁闇�瑕侀厤缃�
+ */
+public class SettingActivity extends Activity {
+ /**Topbar*/
+ private RelativeLayout topBarBack;
+ private TextView topBarTitle;
+ //褰撳墠APP璁惧瀛愮綉鍙峰拰璁惧鍙烽厤缃�
+ private EditText subnetIDEditText;
+ private EditText deviceIDEditText;
+ private Button saveButton;
+ //褰撳墠APP璁惧璁惧鍙�
+ private String strSubnetID = "254";
+ private String strDeviceID = "80";
+
+ private EditText bigIDEditText;
+ private EditText smallIDEditText;
+ private EditText remarkIDEditText;
+
+ private Button btn_save_allow;
+ private Button btn_save_close;
+ private String strBigClassID = "9";
+ private String strSmallClassID = "1";//绗笁鏂硅儗鏅煶涔愭ā鍧�
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_setting);
+ initView();
+ setOnClick();
+ initData();
+ }
+
+
+ private void initView() {
+ subnetIDEditText = findViewById(R.id.et_subnetID);
+ deviceIDEditText = findViewById(R.id.et_deviceID);
+ saveButton = findViewById(R.id.btn_save);
+
+ bigIDEditText = findViewById(R.id.et_bigclass);
+ smallIDEditText = findViewById(R.id.et_smallclass);
+ remarkIDEditText = findViewById(R.id.et_remark);
+ btn_save_allow = findViewById(R.id.btn_save_allow);
+ btn_save_close = findViewById(R.id.btn_save_close);
+ }
+
+
+ private void setOnClick() {
+ saveButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ saveSubnetAndDeviceID();
+ }
+ });
+
+ btn_save_allow.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ saveSEasyProgrammingSearchInfo();
+ }
+ });
+
+ btn_save_close.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ HDLDeviceManager.setIsAllowEasyProgrammingSearch(false);
+ }
+ });
+ }
+
+ private void initData() {
+ strSubnetID = SPUtils.getParam(this, SPUtils.KEY_SUB_ID_, SPUtils.DEFAULT_SUB_ID).toString();
+ strDeviceID = SPUtils.getParam(this, SPUtils.KEY_DEVICE_ID, SPUtils.DEFAULT_DEVICE_ID).toString();
+
+ subnetIDEditText.setText(strSubnetID);
+ deviceIDEditText.setText(strDeviceID);
+
+ //閰嶇疆绠�鏄撶紪绋嬫悳绱㈢殑鍙傛暟
+ HDLDeviceManager.setEasyProgrammingSearchLocalData(9, 90);
+ }
+
+
+ //鏈湴瀛愮綉鍙枫�佽澶囧彿 鑼冨洿0 - 254
+ private void saveSubnetAndDeviceID() {
+ strSubnetID = subnetIDEditText.getText().toString();
+ strDeviceID = deviceIDEditText.getText().toString();
+ if (TextUtils.isEmpty(strSubnetID) || TextUtils.isEmpty(strDeviceID)) {
+ showToast("ID涓嶈兘涓虹┖");
+ } else {
+ int mSubnetID = Integer.parseInt(strSubnetID);
+ int mDeviceID = Integer.parseInt(strDeviceID);
+
+ HDLCommand.setLocalId(this, mSubnetID, mDeviceID);
+
+
+ }
+
+ }
+
+ private void saveSEasyProgrammingSearchInfo(){
+ strBigClassID = bigIDEditText.getText().toString();
+ strSmallClassID = smallIDEditText.getText().toString();
+ String remarkStr = remarkIDEditText.getText().toString();
+ if (TextUtils.isEmpty(strSmallClassID) || TextUtils.isEmpty(strBigClassID)) {
+ showToast("澶х被鎴栬�呭皬绫籌D涓嶈兘涓虹┖");
+ } else {
+ int mBigID = Integer.parseInt(strBigClassID);
+ int mSmallID = Integer.parseInt(strSmallClassID);
+ HDLDeviceManager.setEasyProgrammingSearchLocalData(mBigID, mSmallID, remarkStr);
+ }
+
+ }
+
+
+ public void showToast(String text) {
+ Toast.makeText(this, text, Toast.LENGTH_SHORT).show();
+ }
+
+}
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index 18c4b53..0a0478f 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -59,6 +59,21 @@
</LinearLayout>
<LinearLayout
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content">
+
+ <Button
+ android:id="@+id/btn_setting"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:text="璁剧疆" />
+
+
+
+
+ </LinearLayout>
+
+ <LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
diff --git a/app/src/main/res/layout/activity_setting.xml b/app/src/main/res/layout/activity_setting.xml
new file mode 100644
index 0000000..20ea30c
--- /dev/null
+++ b/app/src/main/res/layout/activity_setting.xml
@@ -0,0 +1,162 @@
+<?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:layout_width="match_parent"
+ android:layout_height="match_parent"
+ tools:context=".activity.SettingActivity">
+
+
+
+ <LinearLayout
+ android:id="@+id/mLinearLayout1"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical"
+ android:layout_marginLeft="10dp"
+ android:layout_marginRight="10dp"
+ android:layout_marginTop="20dp">
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="30dp"
+ android:text="淇敼鏈湴鐨勫瓙缃戝彿鍜岃澶囧彿"
+ android:gravity="center|left"
+ android:textSize="20dp"
+ android:textColor="#000000"/>
+
+ <EditText
+ android:id="@+id/et_subnetID"
+ android:layout_width="match_parent"
+ android:layout_height="40dp"
+ android:layout_marginTop="10dp"
+ android:inputType="number"
+ android:maxLength="3"
+ android:hint="@string/et_subnetid_hint"
+ />
+
+ <EditText
+ android:id="@+id/et_deviceID"
+ android:layout_width="match_parent"
+ android:layout_height="40dp"
+ android:layout_marginTop="10dp"
+ android:inputType="number"
+ android:maxLength="3"
+ android:hint="@string/et_deviceid_hint"
+ />
+
+ <Button
+ android:id="@+id/btn_save"
+ android:layout_width="match_parent"
+ android:layout_height="50dp"
+ android:layout_marginTop="10dp"
+ android:text="@string/btn_save"/>
+
+</LinearLayout>
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:orientation="vertical"
+ android:layout_marginLeft="10dp"
+ android:layout_marginRight="10dp"
+ android:layout_marginTop="20dp"
+ android:layout_below="@+id/mLinearLayout1">
+ <TextView
+ android:layout_width="match_parent"
+ android:layout_height="30dp"
+ android:text="淇敼鏄惁鍏佽绠�鏄撶紪绋嬫悳绱�"
+ android:gravity="center|left"
+ android:textSize="20dp"
+ android:textColor="#000000"/>
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="50dp">
+ <TextView
+ android:layout_width="60dp"
+ android:layout_height="match_parent"
+ android:text="澶х被锛�"
+ android:gravity="center"
+ android:textSize="16dp"
+ ></TextView>
+
+ <EditText
+ android:id="@+id/et_bigclass"
+ android:layout_width="120dp"
+ android:layout_height="match_parent"
+ android:layout_marginTop="10dp"
+ android:gravity="center|left"
+ android:hint="澶х被ID绫诲瀷"
+ android:inputType="number"
+ android:maxLength="3"
+ android:text="9"
+ android:textSize="16dp" />
+
+ <TextView
+ android:layout_width="60dp"
+ android:layout_height="match_parent"
+ android:text="灏忕被锛�"
+ android:gravity="center"
+ android:textSize="16dp"
+ android:layout_marginLeft="20dp"
+ ></TextView>
+
+ <EditText
+ android:id="@+id/et_smallclass"
+ android:layout_width="120dp"
+ android:layout_height="match_parent"
+ android:layout_marginTop="10dp"
+ android:gravity="center|left"
+ android:inputType="number"
+ android:maxLength="3"
+ android:textSize="16dp"
+ android:text="1"
+ />
+
+
+
+ </LinearLayout>
+
+ <LinearLayout
+ android:layout_width="match_parent"
+ android:layout_height="50dp">
+ <TextView
+ android:layout_width="60dp"
+ android:layout_height="match_parent"
+ android:text="澶囨敞锛�"
+ android:gravity="center"
+ android:textSize="16dp"
+ ></TextView>
+
+ <EditText
+ android:id="@+id/et_remark"
+ android:layout_width="200dp"
+ android:layout_height="match_parent"
+ android:layout_marginTop="10dp"
+ android:gravity="center|left"
+ android:inputType="number"
+ android:hint="SDK澶囨敞"
+ android:textSize="16dp"
+ android:text="SDK鐗规畩璁惧"
+ />
+
+ <Button
+ android:id="@+id/btn_save_allow"
+ android:layout_width="match_parent"
+ android:layout_height="match_parent"
+ android:gravity="center"
+ android:text="鍏佽"/>
+
+
+
+ </LinearLayout>
+
+
+ <Button
+ android:id="@+id/btn_save_close"
+ android:layout_width="match_parent"
+ android:layout_height="50dp"
+ android:layout_marginTop="10dp"
+ android:text="绂佹"/>
+
+ </LinearLayout>
+</RelativeLayout>
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 1f5a0aa..1024b92 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,4 +1,7 @@
<resources>
<string name="app_name">HDL_SDK</string>
- <string name="app_version">hdl_lib_v1.6.5.20200117_beta</string>
+ <string name="app_version">hdl_lib_v1.6.6.20200305_beta</string>
+ <string name="btn_save">淇濆瓨</string>
+ <string name="et_subnetid_hint">瀛愮綉鍙凤紙鑼冨洿0 - 254锛�</string>
+ <string name="et_deviceid_hint">璁惧鍙峰彿锛堣寖鍥�0 - 254锛�</string>
</resources>
diff --git a/hdl_core/build.gradle b/hdl_core/build.gradle
index 06da373..a9ba645 100644
--- a/hdl_core/build.gradle
+++ b/hdl_core/build.gradle
@@ -7,7 +7,7 @@
minSdkVersion 17
targetSdkVersion 28
versionCode 1
- versionName "1.0.6"
+ versionName "1.0.7"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
diff --git a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java
index 4dc6b19..5062b57 100644
--- a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java
+++ b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/HDLDeviceManger/Core/HDLCommand.java
@@ -64,6 +64,8 @@
HDLDeviceManager.init(context);
}
+
+
// /**
// * 鑾峰彇鏈湴骞挎挱IP
// * @return
@@ -1030,4 +1032,6 @@
}
+
+
}
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 f8ede67..0b21663 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
@@ -66,30 +66,19 @@
public static List<String> rcuIpList = new ArrayList<>();//缁熻Rcu ip鍦板潃鍒楄〃
public static List<DevicesData> devicesDataList = new ArrayList<>();//缁熻鎼滅储鍒楄〃
public static List<DevicesData> realDevicesDataList = new ArrayList<>();//缁熻鎼滅储鍒楄〃
-
-
private static Context viewContext;
public static List<ListRemarks> listRemarks = new ArrayList<>();
public static List<RcuLight> rcuLightList = new ArrayList<>();
public static List<RcuCurtain> rcuCurtainList = new ArrayList<>();
public static boolean isLogicCtrl = false;
public static ConcurrentHashMap<String, Boolean> ctrlSuccessStateHashMap = new ConcurrentHashMap<>();//2019-8-2
-
-// public static byte[] air1Info = null;
-// public static byte[] air2Info = null;
-// public static byte[] air3Info = null;
-// public static byte[] air4Info = null;
- // air4Info[寮�鍏崇姸鎬侊紝妯″紡锛岃缃俯搴︼紝椋庨�燂紝褰撳墠娓╁害锛屾槸鍚︽憜椋� ];
-
public static boolean isGetRcuIpSuccess = false;
public static boolean isGetDeviceStateSuccess = false; //鍒ゆ柇鑾峰彇璁惧鐘舵�佹槸鍚︽帶鍒舵垚鍔�
-
-// public static boolean isLightCtrlSuccess = false; //鍒ゆ柇鐏厜鏄惁鎺у埗鎴愬姛
-// public static boolean isCurtainCtrlSuccess = false; //鍒ゆ柇绐楀笜鏄惁鎺у埗鎴愬姛
-// public static boolean isACCtrlSuccess = false; //鍒ゆ柇绌鸿皟鏄惁鎺у埗鎴愬姛
-// public static boolean isSceneCtrlSuccess = false; //鍒ゆ柇鍦烘櫙鏄惁鎺у埗鎴愬姛
-// public static boolean isFreshAirCtrlSuccess = false; //鍒ゆ柇鏂伴绯荤粺鏄惁鎺у埗鎴愬姛
-// public static boolean isGeothermalCtrlSuccess = false; //鍒ゆ柇鍦扮儹妯″潡鏄惁鎺у埗鎴愬姛
+ //鏄惁鍏佽琚畝鏄撶紪绋嬫悳绱㈤儴鍒�
+ private static boolean isAllowEasyProgrammingSearch = false;//鏄惁鍏佽琚畝鏄撶紪绋嬫悳绱�
+ private static int SDKLocalBigClass = 9; //SDK 褰撳墠閰嶇疆妯℃嫙璁惧鐨勫ぇ绫伙紝榛樿涓洪煶涔愩�佽儗鏅煶涔愬姛鑳�
+ private static int SDKLocalSmallClass = 1; //SDK 褰撳墠閰嶇疆妯℃嫙璁惧鐨勫皬绫伙紝绗笁鏂硅儗鏅煶涔愭ā鍧�
+ private static String SDKLocalRemark = "鐗规畩璁惧"; //SDK 褰撳墠閰嶇疆妯℃嫙璁惧澶囨敞
/**
@@ -100,12 +89,10 @@
public static void init(Context context) {
viewContext = context;
// HDLUdpCore.initMulticastSocket();
-
-
HandleSearch.rcuIp = (String) SPUtils.getParam(context, SPUtils.KEY_RCU_IP_, "");
Crc.localSubnetID = (int) SPUtils.getParam(context, SPUtils.KEY_SUB_ID_, 254);
Crc.localDeviceID = (int) SPUtils.getParam(context, SPUtils.KEY_DEVICE_ID, 80);
-
+ SDKLocalRemark = (String) SPUtils.getParam(viewContext, SPUtils.KEY_LOCAL_REMARK, SPUtils.DEFAULT_REMARK);
// HandleSearch.curSearchMode = HandleSearch.GET_BUS_DEVICES;
// HDLUdpCore.initMulticastSocket6000();
}
@@ -122,6 +109,32 @@
HDLUdpCore.closeSocket6000();
}
+ /**
+ * 閰嶇疆绠�鏄撶紪绋嬫悳绱㈣繑鍥炵殑榛樿鍙傛暟
+ * @param mSDKLocalBigClass
+ * @param mSDKLocalSmallClass
+ * @param mSDKLocalRemark
+ */
+ public static void setEasyProgrammingSearchLocalData(int mSDKLocalBigClass, int mSDKLocalSmallClass, String mSDKLocalRemark){
+ SDKLocalBigClass = mSDKLocalBigClass;
+ SDKLocalSmallClass = mSDKLocalSmallClass;
+ if(mSDKLocalRemark != null){
+ SDKLocalRemark = mSDKLocalRemark;
+ }
+ isAllowEasyProgrammingSearch = true;
+ }
+
+ public static void setEasyProgrammingSearchLocalData(int mSDKLocalBigClass, int mSDKLocalSmallClass){
+ setEasyProgrammingSearchLocalData(mSDKLocalBigClass, mSDKLocalSmallClass,null);
+ }
+
+ /**
+ * 璁剧疆鏄惁鍏佽琚畝鏄撶紪绋嬫悳绱�
+ * @param isAllow
+ */
+ public static void setIsAllowEasyProgrammingSearch(boolean isAllow){
+ isAllowEasyProgrammingSearch = isAllow;
+ }
/**
* 澶勭悊CommandData骞惰繑鍥炴悳绱㈡垨鎺у埗鐨勬湁鐢ㄤ俊鎭�
@@ -147,6 +160,10 @@
handleSearchData(getDatas);
}
}
+ break;
+ //绠�鏄撶紪绋嬭澶囨悳绱㈡搷浣滅爜銆佽澶囪鍙栨搷浣滅爜 鍥炲
+ case Configuration.DEVICES_SEARCH_COMMAND:
+ handleDeviceSearchBackData(getDatas);
break;
// 鎺у埗璁惧
case Configuration.LIGHT_CTRL_BACK_COMMAND:
@@ -279,6 +296,64 @@
/**
+ * 鍥炲绠�鏄撶紪绋嬫悳绱㈤潪缃戠粶璁惧锛岃繑鍥炲綋鍓峉DK淇℃伅
+ *
+ * @param getDatas
+ */
+ private static void sendDeviceSearchBackInfo(UdpDataBean getDatas) {
+ byte[] remarkByte = StringUtil.stringtoBytes(SDKLocalRemark);
+ byte[] addBytes = new byte[25];
+ addBytes[0] = getDatas.addBytes[0];
+ addBytes[1] = getDatas.addBytes[1];
+ System.arraycopy(remarkByte, 0, addBytes, 2, remarkByte.length > 20 ? 20 : remarkByte.length);
+ addBytes[22] = (byte) SDKLocalBigClass;
+ addBytes[23] = (byte) SDKLocalSmallClass;
+ addBytes[24] = (byte) 1;
+
+ HDLCommand.cusSendCommand(Configuration.DEVICES_SEARCH_BACK_COMMAND,
+ getDatas.sourceSubnetID,
+ getDatas.sourceDeviceID,
+ addBytes,
+ getDatas.port, getDatas.ipAddress);
+
+
+// HDLCommand.cusSendCommand(Configuration.DEVICES_SEARCH_BACK_COMMAND,
+// getDatas.sourceSubnetID,
+// getDatas.sourceDeviceID,
+// addBytes,
+// getDatas.port, NetWorkUtil.getLocalBroadCast());
+
+ }
+
+ /**
+ * 鏀跺埌绠�鏄撶紪绋嬫悳绱㈤潪缃戠粶璁惧
+ * @param getDatas
+ */
+ public static void handleDeviceSearchBackData(UdpDataBean getDatas){
+ //鍒ゆ柇鏄惁鍏佽琚畝鏄撶紪绋嬫悳绱㈠拰鍥炲
+ if(!isAllowEasyProgrammingSearch) return;
+
+ if (getDatas.addBytes.length == 2) {
+ sendDeviceSearchBackInfo(getDatas);
+ } else {
+
+ for (int i = 2, len = getDatas.addBytes.length; i < len; i++) {
+ if (i % 2 == 0) {
+ if ((getDatas.addBytes[i] & 0xFF) == Crc.localSubnetID
+ && (getDatas.addBytes[i + 1] & 0xFF) == Crc.localDeviceID
+ ) {
+ sendDeviceSearchBackInfo(getDatas);
+ break;
+ }
+ }
+ }
+ }
+
+ }
+
+
+
+ /**
* 澶勭悊RCU鎼滅储鏁版嵁
*
* @param getDatas
@@ -342,9 +417,9 @@
}
byte[] remarkByte;
- String remarkString = (String) SPUtils.getParam(viewContext, SPUtils.KEY_LOCAL_REMARK, SPUtils.DEFAULT_REMARK);
+// String remarkString = (String) SPUtils.getParam(viewContext, SPUtils.KEY_LOCAL_REMARK, SPUtils.DEFAULT_REMARK);
- remarkByte = StringUtil.stringtoBytes(remarkString);
+ remarkByte = StringUtil.stringtoBytes(SDKLocalRemark);
byte[] addBytes = new byte[53];
addBytes[0] = getDatas.addBytes[0];
@@ -2540,4 +2615,6 @@
}
+
+
}
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 fd19b58..dc4bf08 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
@@ -423,7 +423,7 @@
}
break;
-
+ case Configuration.DEVICES_SEARCH_COMMAND: //绠�鏄撶紪绋嬭澶囨悳绱㈡搷浣滅爜銆佽澶囪鍙栨搷浣滅爜 鍥炲
case Configuration.LIGHT_CTRL_BACK_COMMAND:
case Configuration.CURTAIN_CTRL_BACK_COMMAND:
case Configuration.AIR_CTRL_BACK_COMMAND:
diff --git a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/SPUtil/SPUtils.java b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/SPUtil/SPUtils.java
index 3037054..ec32900 100644
--- a/hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/SPUtil/SPUtils.java
+++ b/hdl_core/src/main/java/com/hdl/sdk/hdl_core/Util/SPUtil/SPUtils.java
@@ -36,6 +36,12 @@
public static final String KEY_DEVICE_ID = "deviceid";
public static final String KEY_DEVICE_DATA_LIST = "hdldevicedatalist";
+
+ public static final String KEY_LOCAL_BIG_CLASS_ = "local_big_class";
+ public static final String KEY_LOCAL_Small_CLASS_ = "local_Small_class";
+ public static final int DEFAULT_SUB_ID = 254;
+ public static final int DEFAULT_DEVICE_ID = 80;
+
/**
* 淇濆瓨鏁版嵁鐨勬柟娉曪紝鎴戜滑闇�瑕佹嬁鍒颁繚瀛樻暟鎹殑鍏蜂綋绫诲瀷锛岀劧鍚庢牴鎹被鍨嬭皟鐢ㄤ笉鍚岀殑淇濆瓨鏂规硶
*
--
Gitblit v1.8.0