使用Flutter Blue连接到BLE设备时出现问题

时间:2019-01-23 09:15:01

标签: android flutter bluetooth-lowenergy

我是Flutter的新手,并且想测试Flutter Blue提供的一些BLE功能。我已经启动并运行了示例应用程序,它在我周围找到了很多设备。问题是我无法连接到任何一个。我目前正在使用第二部电话来模拟BLE外围设备,所有其他软件(例如nRF Connect for Mobile)都可以连接到外围设备并读取其提供的数据。尝试连接到设备时,Flutter Blue示例应用程序仅停留在断开连接状态。

这是尝试连接时的典型控制台输出:

D/BluetoothGatt( 6359): connect() - device: 73:B9:9F:25:67:DC, auto: true
D/BluetoothGatt( 6359): registerApp()
D/BluetoothGatt( 6359): registerApp() - UUID=201eaf3d-ab8a-402e-9cbf-232527fa53a8
D/BluetoothGatt( 6359): onClientRegistered() - status=0 clientIf=8
D/BluetoothGatt( 6359): onAutoConnectionStatusCb()status =10
D/BluetoothGatt( 6359): onClientConnectionState() - status=0 clientIf=8 device=73:B9:9F:25:67:DC
D/FlutterBluePlugin( 6359): [onConnectionStateChange] status: 0 newState: 2
D/BluetoothGatt( 6359): discoverServices() - device: 73:B9:9F:25:67:DC
I/flutter ( 6359): connected!
D/BluetoothGatt( 6359): onSearchComplete() = Device=73:B9:9F:25:67:DC Status=0
D/FlutterBluePlugin( 6359): [onServicesDiscovered] count: 3 status: 0

通过先通过另一个应用程序进行连接,然后与Flutter应用程序“连接”,我设法连接了几次仿真外围设备。这是输出:

const data = new FormData();
data.append('banner', this.state.banner);
data.append('preview', this.state.preview);

axios.post('/lesson', data).then(() => {})

我已阅读有关退出其他应用程序后连接无法正常关闭的信息,并且确保打开/关闭蓝牙和定位服务以及卸载可能干扰Flutter应用程序的其他应用程序。我尝试允许更长的连接超时时间,以确保应用程序在实际连接之前不会关闭连接,除此之外,我有点迷茫,无法完全注意是错的。

编辑:只是想补充一点,这似乎是与仿真BLE外设有关的问题。从那以后,我就能够使其与AT-09模块和ESP32板一起使用而没有问题!

0 个答案:

没有答案