From 0a8fd4aa92555875f58f67144c2c0c0a20a200af Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期二, 20 八月 2024 09:57:13 +0800
Subject: [PATCH] 增加版本通过配置读取
---
/dev/null | 0
HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/socket/client/TcpClient.java | 2
HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java | 45 ++++++++++++++++++++++
HDLSDK/build.gradle | 4 +-
HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java | 11 +++--
HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/HDLSdk.java | 14 +++++-
6 files changed, 65 insertions(+), 11 deletions(-)
diff --git a/HDLSDK/build.gradle b/HDLSDK/build.gradle
index 9137082..048925e 100644
--- a/HDLSDK/build.gradle
+++ b/HDLSDK/build.gradle
@@ -5,7 +5,7 @@
google()
jcenter()
mavenCentral()
- maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
+ maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url = uri("https://plugins.gradle.org/m2/") }
maven {
url "https://jitpack.io"
@@ -24,7 +24,7 @@
maven { url 'https://maven.aliyun.com/repository/google' }
maven { url 'https://maven.aliyun.com/repository/jcenter' }
maven { url 'https://maven.aliyun.com/repository/public' }
- maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
+ maven { url 'https://maven.aliyun.com/nexus/content/groups/public/' }
maven { url = uri("https://plugins.gradle.org/m2/") }
google()
jcenter()
diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/HDLSdk.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/HDLSdk.java
index 05fc32a..41b71e5 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/HDLSdk.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/common/HDLSdk.java
@@ -1,6 +1,7 @@
package com.hdl.sdk.common;
import android.content.Context;
+import android.content.pm.PackageInfo;
import android.text.TextUtils;
import android.util.Log;
@@ -32,10 +33,17 @@
* @return
*/
public String getVersion() {
- return version;
+ try {
+ PackageInfo packageInfo = context.getPackageManager().getPackageInfo(context.getPackageName(), 0);
+ String versionName = packageInfo.versionName; // 鐗堟湰鍚嶇О锛堝瓧绗︿覆锛�
+ return versionName;
+ } catch (Exception e) {
+ LogUtils.e("鑾峰彇鐗堟湰澶辫触:" + e.getMessage());
+ }
+ return "unknow";
}
- private String version = "1.1.7";
+// private String version = "1.1.7";
private HDLSdk() {
}
@@ -55,7 +63,7 @@
this.context = context.getApplicationContext();
HDLAuthSocket.getInstance().init();
HDLSocket.getInstance().broadcastRequest();
- LogUtils.i("HDLSdk Version:" + version);
+ LogUtils.i("HDLSdk Version:" + getVersion());
//璁㈤槄鎵�鏈夌殑涓婚
HDLLink.getInstance().registerAllTopicsListener(new EventListener() {
diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java
index a14bc66..950e4aa 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLAuthSocket.java
@@ -557,6 +557,51 @@
}
/**
+ * 閫氱敤鍙戦�佹寚浠�
+ * 鍙戦�佷竴娆�
+ *
+ * @param topic 鍙戦�佹暟鎹�
+ * @param bodyStr 鍥炲鐨勪富棰�
+ * @param broadcast 鏄惁瑕佸箍鎾�
+ * @param callBack 鍥炶皟
+ */
+ public void udpSendMsgOneTime(String topic, String bodyStr, boolean broadcast, HDLLinkResponseCallBack callBack) {
+ if (TextUtils.isEmpty(topic) || TextUtils.isEmpty(bodyStr)) {
+ if (callBack != null) {
+ callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_NULL_ERROR));
+ }
+ return;
+ }
+
+ if (!HDLLinkConfig.getInstance().checkIfCertified()) {
+ if (callBack != null) {
+ callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_UNAUTHORIZED_ERROR));
+ }
+ return;
+ }
+
+ LinkRequest message = new LinkRequest(topic, bodyStr);
+ String ip = HDLLinkConfig.getInstance().getIpAddress();
+ if (broadcast) {
+ ip = IpUtils.getBroadcastAddress();
+ }
+ HdlSocketHelper.sendUdp(getUdpBoot(), ip, UDP_PORT, message,"", 1, new HdlSocketHelper.HdlSocketListener() {
+ @Override
+ public void onSucceed(Object msg) {
+ if (callBack == null) return;
+ callBack.onSuccess((LinkResponse) msg);
+ }
+
+ @Override
+ public void onFailure() {
+ if (callBack == null) return;
+ callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_TIMEOUT_ERROR));
+ }
+ }
+ );
+ }
+
+ /**
* 閫氱敤鍙戦�佹寚浠� 鍙彂涓�娆★紝涓嶇洃鍚洖澶嶏紝涓嶉噸鍙�
*
* @param topic 鍙戦�佹暟鎹�
diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java
index 1ea5d10..56a047d 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java
@@ -109,7 +109,7 @@
public void run() {
while (true) {
try {
- Thread.sleep(1000);
+ Thread.sleep(5000);
// LogUtils.i("checkIfCertified=" + HDLLink.getInstance().checkIfCertified() + " getTcp().connected=" + getTcp().connected);
try {
if (!HDLLink.getInstance().checkIfCertified() || (!TextUtils.isEmpty(getTcpIp()) && getTcp().connected)) {
@@ -473,14 +473,15 @@
}
}
- public SocketBoot getTcp() throws RuntimeException {
- if (TextUtils.isEmpty(getTcpIp())) {
+ public synchronized SocketBoot getTcp() throws RuntimeException {
+ String gatewayIpAddress=getTcpIp();
+ if (TextUtils.isEmpty(gatewayIpAddress)) {
LogUtils.e("璇锋悳绱㈢綉鍏�");
throw new RuntimeException("璇锋悳绱㈢綉鍏�");
}
//濡傛灉娌℃湁鍒濆鍖栵紝鎴栬�呯綉鍏矷P鏇存敼浜嗭紝灏遍噸鏂板垵濮嬪寲
- if (tcpBoot == null || !getTcpOptions().getIp().equals(getTcpIp())) {
- tcpBoot = TcpClient.init(getTcpIp(), getTcpPort(), getTcpOptions());
+ if (tcpBoot == null || !getTcpOptions().getIp().equals(gatewayIpAddress)) {
+ tcpBoot = TcpClient.init(gatewayIpAddress, getTcpPort(), getTcpOptions());
tcpBoot.SetHeartbeat(new IHeartbeat() {
@Override
public void heartbeat() {
diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/socket/client/TcpClient.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/socket/client/TcpClient.java
index 7469cc3..742f1bd 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/socket/client/TcpClient.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/socket/client/TcpClient.java
@@ -109,7 +109,7 @@
final InputStream stream = getInputStream();
if (stream != null && getOptions() != null) {
while ( true) {
- int len=getInputStream().read(readBuffer);
+ int len=stream.read(readBuffer);
if(len<=0){
throw new Exception("鎺ユ敹寮傚父锛屾帴鏀舵暟鎹暱搴en="+len);
}
diff --git a/HDLSDK_DEMO.rar b/HDLSDK_DEMO.rar
deleted file mode 100644
index c293162..0000000
--- a/HDLSDK_DEMO.rar
+++ /dev/null
Binary files differ
--
Gitblit v1.8.0