From 94c235c116ebca594662417b5fb2c7378f326c6b Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期三, 08 一月 2025 18:12:31 +0800
Subject: [PATCH] 1.优化上传相关代码。 2.修复多个文件上传时进度条显示异常。

---
 app/src/main/java/com/dayu/pipirrapp/net/MqttManager.java |   21 ++++++++++++++++-----
 1 files changed, 16 insertions(+), 5 deletions(-)

diff --git a/app/src/main/java/com/dayu/pipirrapp/net/MqttManager.java b/app/src/main/java/com/dayu/pipirrapp/net/MqttManager.java
index 4776cc2..3902e86 100644
--- a/app/src/main/java/com/dayu/pipirrapp/net/MqttManager.java
+++ b/app/src/main/java/com/dayu/pipirrapp/net/MqttManager.java
@@ -1,6 +1,8 @@
 package com.dayu.pipirrapp.net;
 
 import android.content.Context;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
 import android.util.Log;
 
 import androidx.lifecycle.LifecycleOwner;
@@ -22,6 +24,7 @@
 import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;
 
 import java.util.HashMap;
+import java.util.UUID;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 
@@ -36,7 +39,7 @@
 
     //    private static final String MQTT_BROKER_URL = "tcp://115.236.153.170:30764"; // 淇敼涓轰綘鐨� broker 鍦板潃
     private static final String MQTT_BROKER_URL = "tcp://192.168.10.52:1883";
-    private static final String CLIENT_ID = "mqttx_a7a9fe73";
+    private String CLIENT_ID = "mqttx_a7a9fe73";
     private static final String TOPIC = "workOrder"; // 璁㈤槄鐨勪富棰�
 
     private MqttClient mqttClient;
@@ -44,10 +47,18 @@
     boolean isHasNet = true;
     //鏄惁杩炴帴鎴愬姛杩囦竴娆★紝娌℃湁鐨勮瘽鑱旂綉鍚庨噸杩�
     boolean isConnet = false;
-    private ExecutorService executorService = Executors.newSingleThreadExecutor();
+    private final ExecutorService executorService = Executors.newSingleThreadExecutor();
 
     public MqttManager(Context context, LifecycleOwner lifecycleOwner) {
         try {
+            PackageManager manager = context.getPackageManager();
+            PackageInfo info = null;
+            try {
+                info = manager.getPackageInfo(context.getPackageName(), 0);
+            } catch (PackageManager.NameNotFoundException e) {
+                throw new RuntimeException(e);
+            }
+            CLIENT_ID = context.getPackageName() + UUID.randomUUID().toString().replace("-", "") + "_" + info;
             mqttClient = new MqttClient(MQTT_BROKER_URL, CLIENT_ID, new MemoryPersistence());
             connectOptions = new MqttConnectOptions();
             connectOptions.setUserName("mqtt_yjy");
@@ -142,10 +153,10 @@
                 // 鍦ㄥ瓙绾跨▼鏀跺埌娑堟伅鏃剁殑澶勭悊閫昏緫
                 Log.d("MqttManager", "subscribe鏀跺埌娑堟伅锛�" + new String(message.getPayload()));
                 //浼犻�扢Q鏀跺埌鐨勪俊鎭�
-                HashMap<String, Object> data= MyJsonParser.getMapFromJson(new String(message.getPayload()));
+                HashMap<String, Object> data = MyJsonParser.getMapFromJson(new String(message.getPayload()));
                 //鍒ゆ柇鏄惁鏄綋鍓嶇敤鎴�
-                if (data.get("inspectorId").equals(MyApplication.myApplication.userId)){
-                    LiveEventBus.get(CommonKeyName.MQTTData).post(message.getPayload());
+                if (data.get("inspectorId").equals(MyApplication.myApplication.userId)) {
+                    LiveEventBus.get(CommonKeyName.MQTTData).post(data.get("workOrderId"));
                 }
             });
 

--
Gitblit v1.8.0