【发布时间】:2018-07-06 05:14:43
【问题描述】:
我们有一个应用程序使用蓝牙低功耗 (BLE) 技术与硬件设备(如活动跟踪器)进行通信。
所有支持 BLE 的手机都可以通信,但是当我们尝试将追踪器与华为手机连接时,它根本不起作用。
流程如下:
- 应用搜索活动跟踪器
- 当app找到tracker后,调用蓝牙Gatt服务的connect方法。
- 跟踪器应该连接成功,它应该在“OnConnectionStateChanged()”方法中响应状态0和状态2(成功) .但问题是,它没有成功连接到跟踪器。当应用发起连接调用时,它立即给出状态为 133(蓝牙 Gatt 故障)的断开回调。
以下是显示问题的日志:
I/Bluetooth: BtGatt.GattService:onConnected() - clientIf=6, connId=0, address=E6:4F:92:69:B7:95
I/Bluetooth: BluetoothProfileService:isAvailable(), mStartError=false, mCleaningUp=false
BluetoothGatt Check Status and NewState: 133|0
I/Bluetooth: BtGatt.GattService:clientDisconnect() - address=E6:4F:92:69:B7:95, connId=null
我们还使用“nRF Connect”应用程序进行了测试,在此应用程序中,它也提供了状态为 133(蓝牙 Gatt 故障)的断开回调。请在附件中找到相同的屏幕截图。
如果有人遇到同样的情况,你能帮助我们吗?
【问题讨论】:
-
您究竟测试过哪些手机型号不起作用?你试过重启手机吗?
-
我们使用的是华为 P8 lite 设备。我们尝试重新启动手机,但没有成功。
-
在这里看到的一样。有时我们的 BLE 设备甚至在 BLE 扫描期间都没有出现。如果有人知道应用程序开发人员可以做什么,那就太好了。
标签: android bluetooth bluetooth-lowenergy android-bluetooth huawei-mobile-services