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