我正在开始使用Bluetooth Low Energy的应用程序,在Delphi 10.2 Tokyo和Windows 10中为Android开发。
我在TForm中创建了一个包含TButton和TBluetoothLE对象的新项目。 TButton OnClick事件仅包含以下代码:
BluetoothLE1.Enabled: = True;
BluetoothLE1.DiscoverDevices(2000);
在我的第一次测试中有两个问题:
问题1 )当运行应用程序(使用F9)并执行BluetoothLE1.DiscoverDevices(2000);
时,如果没有运行上述OnClick两次,则找不到BLE设备(但是有一个BLE设备正在运行,我可以在附近找到另一个应用程序。即使我更改了TimeOut值(加号或减号),如果BluetoothLE1.DiscoverDevices
仅运行一次,也不会找到设备。
问题2 )当应用关闭时(使用F9运行并执行DiscoverDevices后),会出现Invalid Pointer Operation
。 Embarcadero BluetoothLE示例也会出现此错误。如果使用Shift+Ctrl+F9
运行应用程序,则没有错误。
这些问题有解决方案吗?怎么样?
答案 0 :(得分:0)
在Windows平台上运行应用程序时,您只能找到配对的BLE设备。 Delphi蓝牙实现中有很多bug。我不知道Android部分,但对于Windows,你需要其他解决方案而不是默认的Delphi。