Start Debugging

Тег: flutter

115 статей · Страница2из12

Что такое Key во Flutter и когда его отсутствие приводит к багам?
Key это половина идентичности в Widget.canUpdate, единственной строке фреймворка, которая решает, будет ли Element вместе со своим State переиспользован или выброшен. Что это значит на практике, какие изменения списка портят состояние без ключей, какой тип ключа выбрать и где ключ должен стоять, чтобы работать.
Миграция веб-приложения на Flutter с dart:html на package:web и dart:js_interop
Пошаговая миграция с устаревших dart:html, dart:js_util и package:js на package:web 1.1.1 и dart:js_interop: как найти каждый проблемный импорт с помощью компилятора dart2wasm, что переименовывает dart fix, а что нет, ловушки JSImmutableListWrapper и innerHTML, и как проверить результат через flutter build web --wasm.
Перенос импортов Material и Cupertino во Flutter на пакеты material_ui и cupertino_ui
Полная миграция с package:flutter/material.dart и package:flutter/cupertino.dart на material_ui 1.1.1 и cupertino_ui 1.0.2: что перезаписывает dart fix --code=migrate_design_widgets, почему виджеты сторонних пакетов начинают падать на поиске предка, что на самом деле исправляет MaterialUiCompatibilityBridge и как меняется зависимость от flutter_localizations.
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 такой отказ уже не работает.
Назад Вперёд