Delphi 10.4.2 社区版。
TBluetoothLE 控件,启动蓝牙设备扫描后,有两个事件:
1. OnDiscoverLEDevice;发现一个设备也触发,因此会不停地触发。
2. OnEndDiscoverDevices;扫描结束触发。
什么是扫描结束呢?因为启动扫描是:
BluetoothLE1.DiscoverDevices(ScanningTime);
所以,应该就是 ScanningTime 这个时间到了。可以理解为扫描动作的超时值。
但是,在 WINDOWS 底下,这个扫描结束的事件,时间到了,不会被触发。除非调用 BluetoothLE1.CancelDiscovery; 方法。
在安卓下,实测,时间到了,这个事件会被触发。
两边执行结果不一样,那肯定是一个 bug.

本文探讨了使用Delphi10.4.2社区版中TBluetoothLE控件进行蓝牙设备扫描的问题。具体讨论了OnEndDiscoverDevices事件在Windows平台与安卓平台的不同行为,并指出这可能是一个bug。
540

被折叠的 条评论
为什么被折叠?



