问题描述
我是 Android 应用程序的新手,正在尝试更新现有应用程序。 在应用程序连接到设备并完成服务发现之后。设备发送连接更新请求以更改间隔(800 值)和超时(900 值)。我观察到了奇怪的行为..
应用程序(在我的例子中是电话)接收请求并调用 onConnectionUpdated()。此后,来自应用程序的 GATT writeCharacteristic() 失败(返回 false)。但是,如果我尝试对文件 BluetoothGatt.java 中的相同函数 writeCharacteristic() 进行单步调试,则写入操作成功。 (虽然在调试时总是弹出“源代码与字节码不匹配”但我继续写操作成功,请建议如何解决这个问题)
此外,如果未请求连接更新,GATT writeCharacteristic() 也会成功。
我认为这可能是由于 onConnectionUpdated 异步发生。
- 是否需要额外处理 onConnectionUpdated()。
- 应用程序如何知道 onConnectionUpdated 已成功完成。以便应用程序可以在此之后执行写入特性。 我还尝试覆盖 BluetoothGattCallback 类中的 onConnectionUpdated 方法,但由于无法解析该方法而引发编译错误。
以下是 SDK Gradel 详细信息: 一种。 compileSdkVersion 23 湾buildToolsversion '27.0.3' C。 android:minSdkVersion="27" d. android:targetSdkVersion="27"
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)