Size: a a a

Dart & Flutter по-русски

2021 May 19

EA

Eugene Alitz in Dart & Flutter по-русски
нет
источник

AK

Artem Krupp in Dart & Flutter по-русски
ну код покажите
источник

EA

Eugene Alitz in Dart & Flutter по-русски
void initCommandsHandler() async{
   Log.debug(tag, 'initCommandsHandler');
   bleCommandStreamSub = bleCommandStream.asyncMap((command)async{
     if (command != null) {
       Log.debug(tag, 'New commands added $command');
      return await _sendCommandHandler(command);
     }
   }).listen((command) async {
     Log.debug(tag, 'New commands handled $command');
   });
 }
источник

AK

Artem Krupp in Dart & Flutter по-русски
во-первых уберите ненужные асинки
они тут нигде не нужны
источник

КА

Кирилл Апарин... in Dart & Flutter по-русски
Можно какой-нибудь bool добавить isProccessing и если true, то не обрабатывать, а в конце асинхронного ставить его false
источник

EA

Eugene Alitz in Dart & Flutter по-русски
Вроде так:
 void initCommandsHandler() async {
   Log.debug(tag, 'initCommandsHandler');
   bleCommandStreamSub = bleCommandStream.asyncMap((command) {
     if (command != null) {
       Log.debug(tag, 'New commands added $command');
       return _sendCommandHandler(command);
     }
   }).listen((command) {
     Log.debug(tag, 'New commands handled $command');
   });
 }
источник

AK

Artem Krupp in Dart & Flutter по-русски
в самой первой строке тоже
источник

AK

Artem Krupp in Dart & Flutter по-русски
он вообще void
источник

AD

Alexandr Drobyshev in Dart & Flutter по-русски
расскажите дурочку как включить нулл сафети в новом проекте?

прочел тут что доступны в дарт 2.12 у меня 2.12.3 и флаттере 2 у меня 2.0.6

не фига по дефолту нет нулл сафети)

https://flutter.dev/docs/null-safety
источник

AD

Alexandr Drobyshev in Dart & Flutter по-русски
источник

AK

Artem Krupp in Dart & Flutter по-русски
либо пишите Future<void> либо не пишите async
источник

EA

Eugene Alitz in Dart & Flutter по-русски
ты прав, но оно не на что не влияет
источник

D

Dnttme in Dart & Flutter по-русски
Никто?(
источник

AK

Artem Krupp in Dart & Flutter по-русски
во-вторых уверены ли вы что _sendCommandHandler не зацикливается нигде?
источник

EA

Eugene Alitz in Dart & Flutter по-русски
Вопрос по поводу         return _sendCommandHandler(command);
источник

AK

Artem Krupp in Dart & Flutter по-русски
ну покажите _sendCommandHandler
источник

EA

Eugene Alitz in Dart & Flutter по-русски
как флаттер знает, что нужно ждать выполнения?
источник

KB

Kirill Bubochkin in Dart & Flutter по-русски
2.12 именно в pubspec.yaml прописан?
источник

AK

Artem Krupp in Dart & Flutter по-русски
флаттер знает.
источник

EA

Eugene Alitz in Dart & Flutter по-русски
Future<BleCommandItemModel> _sendCommandHandler(BleCommandItemModel command) async {
   Log.info(tag, "try to send command $command");

   if (connectionState == PeripheralConnectionState.connected) {
     final currentTime = DateTime.now().millisecondsSinceEpoch;
     BleCommandItemModel finalCommand;

     // Add relevant timestamps to the command
     if (command.firstSendTime == 0) {
       finalCommand = command.copyWith(
         firstSendTime: currentTime,
         lastAttemptToSendTime: currentTime,
       );
     } else {
       finalCommand = command.copyWith(
         lastAttemptToSendTime: currentTime,
       );
     }

     final pck = CommandPacketModel(finalCommand);
     final commandPacket = pck.prepare();
     Log.info(tag, 'commandPacket $commandPacket');

     final chunks = getSplitPacketBytes(commandPacket);
     Log.info(tag, 'chunks $chunks');
     for (final chunk in chunks) {
       Log.info(tag, 'TRY TO WRITE CHUNK $chunk');
       await bleService.writeCharacteristic(chunk);
     }
   } else {
     if (command.onError != null) {
       command.onError!();
     }
     if (commonErrorCallback != null) {
       commonErrorCallback!();
       commonErrorCallback = null;
     }
     Log.warning(tag, "device disconnected, command not sent ");
   }

   return command;
 }
источник