From 798128053bb17ed293aa8d5424db3b5ed007d375 Mon Sep 17 00:00:00 2001 From: zuoxiao <470321431@qq.com> Date: 星期一, 23 十二月 2024 10:20:57 +0800 Subject: [PATCH] 1.优化订单列表框架,升级为viewPager2,提升性能。 2.添加收到新工单后的红点提醒。 3.修复查询数据为空时报错。 4.优化修改经纬度的流程。 5.修复mqtt的CLIENT_ID一致导致的连接错误。 6.修复收到新工单后点击消息通知栏跳转详情时不更新数据的bug。 --- 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