Что внутри Flutter 3.29.0

Вышел Flutter 3.29! Обвноления касаются производительности, нативных интерфейсов, инструментов разработки и других вещей. Давайте разберем, что тут важно.

🌟 iOS-стиль стал еще лучше   

Новые возможности навигации:  

CupertinoNavigationBar и CupertinoSilverNavigationBar теперь поддерживают виджеты в нижней части (например, поиск или сегментированный контроль).  

Добавлен конструктор CupertinoNavigationBar.large для заголовков в стиле iOS.  

Улучшено размытие фона в CupertinoAlertDialog.  

Модальные окна с жестом dismiss:  

Новый CupertinoSheetRoute позволяет закрывать модальные окна свайпом вниз.  

Юрий Петров, Tech Lead Friflex: Теперь диалоги в темной теме выглядят так же, как на нативном iOS. Я думаю, пользователи Iphone оценят.

🌟 Material Design: Анимации и доступность

Новые переходы между страницами:  

FadeForwardsPageTransitionsBuilder заменяет ZoomPageTransitionsBuilder, устраняя проблемы с производительностью. Анимация теперь включает одновременное смещение и затухание.  

Обновленные компоненты:  

CircularProgressIndicator и LinearProgressIndicator адаптированы под Material 3.  

Добавлены кастомные курсоры для Chip, Tooltip и ReorderableListView.  

Юрий Петров, Tech Lead Friflex: Переходы стали плавнее даже на слабых устройствах. Рекомендую попробовать в проектах с большим количеством навигации.

🌟 Impeller: Стабильность и поддержка  

Vulkan на Android:  

Исправлены мерцания и проблемы с черным экраном.  

На устройствах MediaTek и PowerVR Vulkan отключен в пользу OpenGLES.  

OpenGLES как fallback:  

Все Android-устройства теперь поддерживают Impeller, даже без Vulkan.  

iOS:  

Skia окончательно удалена. Уменьшение размера приложений — ждем в следующих релизах!  

Юрий Петров, Tech Lead Friflex: Impeller на OpenGLES — это спасение для старых девайсов. Flutter стабилен на 100% Android-устройств, теперь главное, чтобы не появились новые проблемы.

🌟 DevTools и IDE: Логи и инспектор  

Новый инспектор виджетов:  

Упрощенное дерево, автоматическое обновление при hot-reload.  

Улучшения логов:  

Фильтрация по уровню серьезности, метаданные (изоляты, зоны).  

Юрий Петров, Tech Lead Friflex: Теперь найти ошибку в логах стало проще. Особенно радует поддержка isolate — это упрощает отладку многопоточных приложений.

🌟 Веб: WASM и изображения  

WebAssembly (WASM):  

Больше не нужны специальные HTTP-заголовки, но многопоточность требует их включения.  

Изображения:  

Контроль над использованием элементов через webImageElementStrategy.  

🌟 Важные изменения и deprecated-пакеты  

Пакеты на удаление:  

  — flutter_markdown, css_colors, palette_generator и другие будут отключены 30 апреля 2025.  

HTML-рендерер удален:  

Flutter Web теперь использует только CanvasKit и WASM.  

Юрий Петров, Tech Lead Friflex: Если используете данные пакеты, рекомендую не затягивать с миграцией на другие.

Полный список изменений можно посмотреть: 

Breaking changes;

В статье.

Не пропустите обновления в мире Flutter на канале Мобильный разработчик.

Источник: habr.com

0 0 голоса
Рейтинг новости
1
0
Подписаться
Уведомить о
0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии