Start Debugging

Тег: dart

90 статей · Страница2из9

Fix: вход через Firebase Auth не сохраняется в release-сборке Flutter для Android
Firebase Auth восстанавливает сессию на Android из приватного файла SharedPreferences без единого сетевого запроса, поэтому выход из аккаунта только в release никогда не является поломкой персистентности. Причина в другом google-services.json, отклонённом обновлении токена, App Check или вашем собственном блоке catch.
2026-08-29 dartflutterisolates
В чем разница между isolate в Dart и потоком?
Поток разделяет память со всеми остальными потоками процесса. Isolate в Dart не разделяет: у него собственная куча, один цикл событий, а с другими isolate он общается только сообщениями. Разбираем, что это значит на уровне VM, где isolate groups размывают границу и как все это проявляется во Flutter, FFI и вебе.
2026-08-24 flutterdarttesting
Как протестировать Flutter-виджет в фиксированный момент времени без замыкания withClock
Внутри testWidgets внешний clock из package:clock уже поддельный, но начинается с системного времени запуска теста. Зафиксируйте его для всего набора тестов, переопределив runTest в собственном AutomatedTestWidgetsFlutterBinding, который устанавливается из flutter_test_config.dart. Проверено на Flutter 3.44.2, clock 1.1.2, fake_async 1.3.3.
2026-08-21 flutterdartandroid
Исправление: интерфейс Flutter перекрывается системной панелью навигации Android после перехода на SDK 35
Переход на Android SDK 35 переводит приложение Flutter в режим edge-to-edge, поэтому тело Scaffold отрисовывается за панелью навигации. Обрабатывайте отступы через SafeArea и padding из MediaQuery вместо отказа от режима, потому что в Android 16 такой отказ уже не работает.
2026-08-21 flutterdartsecurity
Flutter 3.47.1 не даёт транзитивному пакету внедрить нативный код в ваше приложение
Хотфикс 3.47.1 проверяет идентификаторы классов и пакетов плагинов до того, как они попадут в GeneratedPluginRegistrant. Разбираем закрытую дыру, регулярное выражение, которое её закрывает, и остальные 11 исправлений релиза.
2026-08-16 flutterdartimpeller
Flutter 3.47 делает Impeller рендерером по умолчанию в Windows, Linux и macOS
Стабильный Flutter 3.47.0 переводит десктопные приложения со Skia на Impeller, не меняя ни строки в коде вашего runner. Что именно меняется, как отключить Impeller на каждой платформе и почему такое отключение временное.
Riverpod Notifier vs AsyncNotifier vs StreamNotifier во Flutter: какой класс наследовать?
Выбор определяется типом возврата build(): T означает Notifier, FutureOr<T> означает AsyncNotifier, Stream<T> означает StreamNotifier. Здесь матрица выбора, иерархия типов, которая это объясняет, и подводные камни фильтрации по == и перезаписи состояния. Проверено на flutter_riverpod 3.4.2 и Flutter 3.44.2.
Назад Вперёд