From c84efd301bac95180aa3507a8a9a1c53068c8bb9 Mon Sep 17 00:00:00 2001 From: 562935844@qq.com Date: 星期五, 15 九月 2023 09:45:03 +0800 Subject: [PATCH] Merge branch 'androidx' of ssh://172.16.1.23:29718/~cjl/HDLSDK_A_Android into androidx --- HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkRequest.java | 45 ++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 42 insertions(+), 3 deletions(-) diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkRequest.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkRequest.java index 3634ce4..8184536 100644 --- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkRequest.java +++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/bean/LinkRequest.java @@ -1,8 +1,13 @@ package com.hdl.sdk.connect.bean; + import android.text.TextUtils; -import androidx.annotation.NonNull; + +import com.hdl.sdk.common.utils.LogUtils; +import com.hdl.sdk.connect.config.HDLLinkConfig; +import com.hdl.sdk.common.utils.ByteUtils; +import com.hdl.sdk.connect.utils.AesUtil; /** * Created by Tong on 2021/9/29. @@ -10,6 +15,7 @@ public class LinkRequest { private String topic; private String data; + private int length; public LinkRequest() { @@ -35,7 +41,7 @@ public void setData(String data) { this.data = data; if (!TextUtils.isEmpty(data)) { - setLength(data.length()); + setLength(getBytesLength(data)); } else { setLength(0); } @@ -50,7 +56,6 @@ this.length = length; } - @NonNull @Override public String toString() { return "Topic:" + @@ -61,4 +66,38 @@ "\r\n\r\n" + getData(); } + + + private int getBytesLength(String str) { + return ByteUtils.stringToBytes(str).length; + } + + + /** + * 鑾峰彇鍙戦�佹暟鎹産yte + * + * @return + */ + public byte[] getSendBytes() { + try { + //鍒ゆ柇鏄惁闇�瑕佸姞瀵� + if (HDLLinkConfig.getInstance().ifNeedEncrypt(topic)) { + //闇�瑕佸姞瀵� + byte[] dataBytes = AesUtil.aesEncrypt(ByteUtils.stringToBytes(data), HDLLinkConfig.getInstance().getLocalSecret()); + String headString = "Topic:" + getTopic() + "\r\n" + "Length:" + dataBytes.length + "\r\n" + "\r\n"; + byte[] headBytes = headString.getBytes("utf-8"); + byte[] sendBytes = ByteUtils.concatBytes(headBytes, dataBytes); + LogUtils.i("鍙戦�佹暟鎹細\r\n" + headString + "\r\n" + data); + return sendBytes; + + } else { + String sendString = this.toString(); + LogUtils.i("鍙戦�佹暟鎹細\r\n" + sendString); + return sendString.getBytes("utf-8"); + } + + } catch (Exception e) { + return new byte[]{}; + } + } } -- Gitblit v1.8.0