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