hxb
2024-02-22 d451118d4be05f180cfe1f99bc5904f74db8cc3f
HDLLinkLocalSdk/src/main/java/com/hdl/sdk/link/core/utils/QueueUtils.java
@@ -10,6 +10,7 @@
import java.io.UnsupportedEncodingException;
import java.nio.charset.StandardCharsets;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.Queue;
import java.util.concurrent.ExecutorService;
@@ -110,15 +111,38 @@
            byte[] bodyBytes = AesUtil.aesDecrypt(linkPacket.getBody(), HDLLinkConfig.getInstance().getLocalSecret());
            if (bodyBytes != null) {
                response.setData(new String(bodyBytes, StandardCharsets.UTF_8));
                response.setByteData(bodyBytes);
            } else {
                LogUtils.e("解密失败\r\n" + linkPacket.getTopic() + "\r\n" + ByteUtils.encodeHexString(linkPacket.getBody()));
                response.setByteData(linkPacket.getBody());
                response.setData(new String(linkPacket.getBody(), "utf-8"));
            }
        } else {
            response.setByteData(linkPacket.getBody());
            response.setData(new String(linkPacket.getBody(), "utf-8"));
        }
        if (HDLConnectHelper.isLocal()) {
            LogUtils.i("本地接收到数据:\r\n" + response.getTopic() + "\r\n" + response.getData());
        if (!linkPacket.isCloudPacket()) {
            if (HDLConnectHelper.isInverterTopic(response.getTopic())) {
                LogUtils.i("本地接收到数据:\r\n" + response.getTopic() + "\r\n" + Arrays.toString(HDLConnectHelper.byteArrayConvertIntArray(response.getByteData())));
            } else {
                LogUtils.i("本地接收到数据:\r\n" + response.getTopic() + "\r\n" + response.getData());
            }
//            if (!"/user/all/custom/gateway/broadcast".equals(response.getTopic())) {
//                LogUtils.i("本地接收到数据:\r\n" + response.getTopic() + "\r\n" + response.getData());
//            }
//            if(response.getTopic().contains("/custom/scene/list/get_reply")){
//                response.setData(response.getData()+"\":1}");
//            }
//            LogUtils.i("本地接收到数据:\r\n" + response.getTopic() + "\r\n" + response.getData()+ "\r\n" + response.getData().length());
        }
        if (response.getTopic().contains("/user/all/custom/gateway/")) {
//            LogUtils.i("本地接收到数据:\r\n" + response.getTopic() + "\r\n" + response.getData() + "\r\n" + response.getData().length());
        } else if (response.getTopic().contains("thing/property/up")) {
//            LogUtils.i("本地接收到数据:\r\n" + response.getTopic() + "\r\n" + response.getData() + "\r\n" + response.getData().length());
        } else {
            LogUtils.i("本地接收到数据:\r\n" + response.getTopic() + "\r\n" + response.getData() + "\r\n" + response.getData().length());
        }
        //解析完成,topic发送一次
        EventDispatcher.getInstance().post(response.getTopic(), response);