Как отправить / получить данные, используя блютуз в флаттере? - PullRequest
0 голосов
/ 10 января 2020

Я пытаюсь получать и отправлять данные от и до arduino uno. Я попытался изучить плагин flutter blue и плагин flutter bluetooth serial, плагин flutter serial кажется неполным, а flutter blue отсутствуют примеры или документация, а официальный пример github слишком сложен и не имеет отношения к тому, что я хочу сделать. Я хочу очень простой метод отправки или извлечения данных из Arduino с использованием модуля H C -05.

Ответы [ 2 ]

1 голос
/ 10 апреля 2020

Попробуйте пример приложения из пакета «flutter_bluetooth_serial». Они даже включали чтение данных из модуля H C -05! Если вы хотите что-то более простое, попробуйте извлечь основной код из примера и скопировать его в другое приложение.

0 голосов
/ 29 апреля 2020

Если вы работаете с модулем H C -05 (Bluetooth с низким энергопотреблением). Используйте пакет «flutter_bluetooth_serial». Это не отличный пакет, но он должен работать.

Этот пример может не работать.

Сканирование для устройств:

//Here the scan results will be saved
List<BluetoothDiscoveryResult> results = List<BluetoothDiscoveryResult>();

void startDiscovery() {
  streamSubscription = FlutterBluetoothSerial.instance.startDiscovery().listen((r) {
    results.add(r);
  });

  streamSubscription.onDone(() {
    //Do something when the discovery process ends
  });
}

Подключение к устройству:

Используйте эту функцию при выборе устройства из списка результатов.

BluetoothConnection connection;

connect(String address) async {
  try {
    connection = await BluetoothConnection.toAddress(address);
    print('Connected to the device');

    connection.input.listen((Uint8List data) {
      //Data entry point
      print(ascii.decode(data));
    })

  } catch (exception) {
    print('Cannot connect, exception occured');
  }
}

Отправка данных:

Future send(Uint8List data) async {
    connection.output.add(data);
    await _connection.output.allSent;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...