如何解决Android Ble服务器-仅允许以前连接的设备进行连接
我有一个android BLE客户端和一个android BLE服务器。
初始连接后,我希望服务器仅允许以前连接的客户端设备进行连接。
如何实现?
到目前为止,我已经考虑过:
1。通过android蓝牙设置绑定设备
是否可能仅允许绑定的设备连接到服务器?如果可以,怎么办?
2。某种白名单
- Mac地址(有问题,因为mac地址不是静态的)
- 设备名称
- IRK
是否可以实施这样的白名单?如果可以,怎么办?
3。只为首次连接做广告
仅为首次连接做广告,然后记住客户端上的服务器设备并尝试不做广告就连接到服务器。 这似乎不起作用。
解决方法
Id建议您选择第二个选项。使用ble创建连接后,您可以扫描设备,然后在扫描后可以与它们建立GATT连接。因此,如果您只希望先前连接的设备建立此连接,则只需过滤,然后在扫描回调中即可。由于可以按MAC地址进行过滤。可以通过在全局设置中存储您的MAC地址列表来完成此操作,以便在应用重新打开时不会重置数据。只需在您的设备中添加字符串列表,然后对其进行过滤即可。
对于初始连接,您还将需要一个关闭状态。这样一来,如果您的列表中没有条目,则无需过滤器即可自由扫描。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。