1***@qq.com
1***@qq.com
  • 发布:2025-08-08 15:03
  • 更新:2025-08-08 15:03
  • 阅读:37

【报Bug】uni.writeBLECharacteristicValue当serviceId或characteristicId不正确时,不进入任何回调

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Win11

HBuilderX类型: 正式

HBuilderX版本号: 4.75

手机系统: Android

手机系统版本号: Android 12

手机厂商: 华为

手机机型: 安卓

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:
                    this.addLog("握手成功,正在发送");  
                    uni.writeBLECharacteristicValue({  
                        deviceId: this.connectedDeviceId,  
                        serviceId: this.serviceId,  
                        characteristicId: this.writeCharacteristicId,  
                        value: buffer,  
                        success: () => {  
                            this.addLog({  
                                date: Common.DateFormat(),  
                                remark: "发送数据成功"  
                            })  
                            resolve();  

                        },  
                        fail: (err) => {  
                            this.addLog({  
                                date: Common.DateFormat(),  
                                remark: "发送数据失败" + JSON.stringify(err)  
                            })  
                            reject(err);  
                        },  
                        complete: () => {  
                            this.addLog({  
                                date: Common.DateFormat(),  
                                remark: "向设备写入数据完成"  
                            })  
                        }  
                    });  
                });

操作步骤:

连接蓝牙成功,写入数据时,传入错误的serviceId

预期结果:

成功时进入success和complete回调,失败进入fail和complete回调

实际结果:

安卓苹果都一样,不进入任何回调。苹果的全对的情况,数据发送成功都不进入任何回调。

bug描述:

今天粗心大意,serviceId多复制了一个引号,然而悲剧了,success,fail,complete一个都不进,导致我的promise永远pending了,期望的是进入fail,complete

2025-08-08 15:03 负责人:无 分享
已邀请:

要回复问题请先登录注册