我正在使用与ANCS兼容的Android BLE应用。 ANCS内容消费者是基于nRF52的东西,可以收听ANCS通知,并且(应该)也可以调整手机音量。
我已将ANCS作为广告包中的请求UUID和广告响应包中的HID设备UUID。
iOS的一切都很好。一切正常,没有问题。但是使用android我的系统的ANCS部分工作正常,但我不能让音量部分工作。在绑定之后,android将设备显示为输入设备,并且它也被选择用于输入。如果我尝试发送音量增大/减小键,我没有从机器人方面得到任何指示。
我的假设是我不需要连接到nrf板作为periperal(bluetoothdevice.connectGatt()),我只运行gatt服务器并为nrf板提供ANCS服务。那部分工作正常。我还尝试通过connectGatt连接它,检查服务并为其启用通知。但是当我发送密钥时,我看不到任何迹象。如果我请求读取特征或描述符,那就行了。
我的想法中存在一些根本性缺陷吗?难道Android框架不应该处理键盘部分吗?另外,为什么我无法获得有关input_report更改的任何通知?