From 7c8ce9b9a7d3fc1aaa4a621e86415b25ad10a34f Mon Sep 17 00:00:00 2001
From: panlili2024 <14743743+panlili2024@user.noreply.gitee.com>
Date: 星期三, 19 三月 2025 09:36:28 +0800
Subject: [PATCH] 添加source屏扫码流程
---
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