Sfoglia il codice sorgente

优化监听代码;恢复蓝牙准备重试流程优化

Frankensteinly 8 mesi fa
parent
commit
12be9572ce

+ 6 - 6
app/src/main/java/com/grkj/iscs/BusinessManager.kt

@@ -563,12 +563,12 @@ object BusinessManager {
     ) {
         Executor.runOnMain {
             // 如果是已经连上的设备,从indicate开始往下走,不需要再扫描了
-//            if (BleManager.getInstance().isConnected(mac)) {
-//                deviceList.find { it.bleDevice.mac == mac }?.let { itBleDevice ->
-//                    indicate(itBleDevice, isNeedLoading, prepareDoneCallBack)
-//                    return@runOnMain
-//                }
-//            }
+            if (BleManager.getInstance().isConnected(mac)) {
+                deviceList.find { it.bleDevice.mac == mac }?.let { itBleDevice ->
+                    indicate(itBleDevice, isNeedLoading, prepareDoneCallBack)
+                    return@runOnMain
+                }
+            }
             CommonUtils.checkBlePermission(activity) {
                 doScanBle(mac, isNeedLoading, prepareDoneCallBack)
             }

+ 2 - 1
app/src/main/java/com/grkj/iscs/ble/BleUtil.kt

@@ -105,7 +105,8 @@ class BleUtil private constructor() {
                  indicateUUID: String = INDICATE_UUID,
                  isStart: Boolean = true,
                  indicateCallback: CustomBleIndicateCallback?) {
-        BleManager.getInstance().removeIndicateCallback(bleDevice, indicateUUID)
+        // stopIndicate包含removeIndicateCallback
+//        BleManager.getInstance().removeIndicateCallback(bleDevice, indicateUUID)
         BleManager.getInstance().stopIndicate(bleDevice, serviceUUID, indicateUUID)
         if (!isStart) {
             return