我试图演示Android端服务(ANCS术语中的内容提供商),它与支持Apple Notification Service(ANCS)通知消费者的嵌入式设备进行通信。原因是,嵌入式设备仅支持ANCS。由于ANCS BLE方面的东西是由Apple公开的,这应该是可能的,并且我已经在android side gatt服务器中添加了服务+相关特性。嵌入式设备是北欧nRF52,SW是北欧ANCS演示。演示适用于iPhone,显然是使用桌面版本的nRF控制面板(如果添加了北欧提供的配置,如果你有Windows机器,我不会这样做。)
然而,我似乎无法将设备与Android绑定,这是连接前所需要的。广告处于有限的发现模式(绑定之前),因此我无法通过设置的常规扫描找到它。从Java代码绑定也不起作用。使用mBluetoothDevice.createBond(),我得到状态为10(BluetoothDevice.BOND_NONE)的ACTION_BOND_STATE_CHANGED回调,状态为11(BluetoothDevice.BOND_BONDING)。显然我需要在这里交换密钥,但不知道如何做到这一点。
如果有人之前做过同样的练习,也不知道,但任何其他提示也将不胜感激!谢谢!