Выпущен Flutter 2.0 | Следующее поколение Flutter, созданное для Интернета, мобильных и настольных компьютеров

Flutter

Английский оригинальный адрес:developers.google blog.com/2021/03/button...

Сегодня мы официально объявляемFlutter 2серьезное обновление, Позволяет разработчикам создавать красивые, быстрые и портативные приложения для любой платформы. С Flutter 2 вы можете публиковать нативные приложения для пяти операционных систем, используя одну и ту же кодовую базу: iOS, Android, Windows, macOS и Linux; И работа в Интернете для таких браузеров, как Chrome, Firefox, Safari или Edge. Flutter можно даже встроить в автомобили, телевизоры и интеллектуальные устройства, чтобы обеспечить всеобъемлющий и масштабируемый опыт для мира окружающих вычислений.

Flutter 2 logo

Наша цель — коренным образом изменить представление разработчиков о создании приложений, Начните не с платформы, на которую вы хотите ориентироваться, а с опыта, который вы хотите принести. Flutter позволяет создавать вручную с брендингом и дизайном на переднем плане.хорошоопыт. Флаттервысокоскоростной, который может компилировать исходный код в машинный код, В то же время, благодаря нашей государственной поддержке горячей перезагрузки, вы по-прежнему можетеПовышение продуктивности разработки, Вы можете вносить изменения во время работы приложения и сразу же видеть результаты. ФлаттероткрытымДа, тысячи участников вносят свой вклад в основную структуру, и расширяет его через экосистему пакетов.

5 tablet and mobile device screens

существуетОпубликовать сегодняВо флаттере 2, Мы расширяем Flutter от мобильного фреймворка доПортативныйРамка, Пусть ваши приложения работают на различных платформах с минимальными компромиссами. Уже только в Play StoreБолее 150 000 приложений Flutter, Каждое приложение можно бесплатно обновить с помощью Flutter 2. Потому что теперь их можно распространить на настольные и веб-платформы без перезаписи.

Клиенты со всего мира используют Flutter, включая некоторые популярные приложения, Такие какWeChat,Grab,Yandex Go,Nubank,Sonos,Fastic,Bettermentа такжеrealtor.com. В Google мы полагаемся на Flutter, Более тысячи инженеров Google используют Dart и Flutter для создания приложений. Фактически, многие из этих продуктов уже отправлены, включая Stadia, Google One и Google Nest Hub.

Logos of Google apps powered by Flutter

Несколько месяцев назад Google Pay — эталонное приложение его команды.Полностью перейти на разработку во Flutter, Они добились значительного прогресса в производительности и качестве. Унифицируя кодовую базу, команда устранила функциональные различия между платформами и ликвидировала более миллиона строк кода. Команда Google Pay также говорит, что ее инженеры работают гораздо эффективнее, а технический долг значительно сокращается. Включены унифицированные процессы выпуска, такие как проверки безопасности и пробные версии для iOS и Android.

Flutter Web

Пожалуй, самое захватывающее во Flutter 2 — этоПроизводственная поддержка Интернета.

Ранние основы Интернета были ориентированы на документы.. Однако после многих лет разработки веб-платформы API платформы был очень богатым, Эти API могут использовать 2D- и 3D-графику с аппаратным ускорением, и гибкие API-интерфейсы компоновки и рисования, для создания очень сложных приложений. Веб-сайт Flutter основан на этих инновациях, предоставляяориентированный на приложенияс кадр, Фреймворк в полной мере использует все преимущества, которые может предложить современный Интернет.

В первом выпуске особое внимание будет уделено трем сценариям применения:

  • Прогрессивные веб-приложения (PWA), который сочетает в себе функциональность веб-приложения с функциональностью настольного приложения.

  • Одностраничные приложения (SPA), однократная загрузка и передача данных в и из веб-сервиса.

  • Перенесите существующее мобильное приложение Flutter в Интернет, с тем же кодом, чтобы обеспечить тот же опыт.

За последние несколько месяцев, готовясь к выпуску стабильной веб-версии, Мы добились большого прогресса в оптимизации производительности, Добавлен новый авторWebAssemblyпостроенCanvasKitУправляемый движок рендеринга.Flutter Plasmaчленами сообществаFelix BlaschkeСоздано демонстрационное приложение, Демонстрирует опыт создания сложной веб-графики с помощью простых шагов с использованием Dart и Flutter. Этот пример также можно запустить на настольных или мобильных устройствах.

Мы всегда расширяем Flutter, чтобы обеспечить наилучшие возможности на веб-платформе. В последние месяцы мы добавили автозаполнение текста, Управление URL-адресами адресной строки, маршрутизацией и манифестами PWA. В то же время, поскольку настольные браузеры так же важны, как и мобильные, Мы также добавили интерактивные полосы прокрутки и сочетания клавиш, увеличили плотность контента по умолчанию в режиме рабочего стола, И добавляет поддержку чтения с экрана для специальных возможностей в Windows, macOS и Chrome OS.

Вот несколько примеров веб-приложений, созданных с помощью Flutter. Среди воспитателей,iRobotс его популярнымКорневой образовательный роботизвестный. Производственная поддержка Flutter для Интернета позволяет iRobot использовать существующиеобразовательная среда программированияПерейти на веб-платформу, Что расширит его доступность для Chromebook и других браузеров, Потому что браузер — лучший выбор оборудования.Статьи в блоге IrobotПодробная информация о прогрессе и почему они выбрали Flutter.

iRobot interface with Flutter

Другой пример — Rive, предоставляющий дизайнерам мощный инструмент, Для создания пользовательских анимаций, которые можно публиковать на любой платформе. ИхОбновленное веб-приложениеСейчас доступна бета-версия, Полностью созданный Flutter, это любовное письмо от Flutter всем.

Rive interface with Flutter

ты сможешьв нашей статьеУзнайте больше о Flutter Web.

Flutter 2 на настольных, складных и встроенных устройствах

В дополнение к традиционным мобильным устройствам и Интернету, Flutter все чаще распространяется на другие типы устройств, В сегодняшнем основном докладе мы выделили три партнерства, которые демонстрируют масштабируемость Flutter.

первый,CanonicalСотрудничайте с нами, чтобы перенести Flutter на рабочий стол, Инженеры предоставили код для поддержки разработки и развертывания в Linux. На сегодняшнем мероприятии команда Ubuntu продемонстрировала раннюю версию нового установщика, переписанного Flutter. Важным для Canonical является то, что они обеспечивают надежную, но отточенную работу на различных аппаратных конфигурациях. В будущем Flutter — это будущее Canonical для создания настольных и мобильных приложений.Выбор по умолчанию.

Flutter is the default choice for future desktop and mobile apps created by Canonical.

Второй,МайкрософтПродолжаем расширять поддержку Flutter. Кромепостоянное сотрудничествоПомимо обеспечения высококачественной поддержки Windows во Flutter, Сегодня Microsoft также выпускает поддержку Flutter Engine для новых складных устройств Android. В этих устройствах представлены новые шаблоны проектирования с приложениями, которые могут масштабировать контент или использовать преимущества двухэкранных функций для обеспечения одновременного взаимодействия. существуетЗапись в блоге команды инженеров Surfaceсередина, Они представляют свои работы и приглашают других присоединиться к ним, Работайте вместе над высококачественными реализациями для Surface Duo и других устройств.

Windows support in Flutter

Наконец, самый продаваемый автопроизводитель в миреТойота Автомотивобъявил о своих планах, Принесите лучший цифровой опыт в свой автомобиль, создав информационно-развлекательную систему на базе Flutter. Использование Flutter знаменует собой серьезный отход от того, как в прошлом разрабатывалось автомобильное программное обеспечение. Toyota выбрала Flutter за его высокую производительность и постоянство опыта. Быстрая итерация, эргономика для разработчиков и сенсорная механика на уровне смартфона. Используя API встраивания Flutter, Toyota может адаптировать Flutter к уникальным потребностям автомобильных систем.

Toyota using Flutter in vehicle infotainment systems

Мы рады продолжить работу с Toyota и другими компаниями, чтобы добавить Flutter в автомобили, телевизоры и другие встраиваемые устройства. Мы надеемся поделиться другими примерами в ближайшие месяцы.

Постоянно растущая экосистема Flutter

Сейчас существует более 15 000 пакетов Flutter и Dart: отАмазонка,Майкрософт,Adobe,Алибаба,eBayа такжеSquareи т. д.; некоторые важные программные пакеты, такие какLottie,Sentryа такжеSVG, так же какFlutter Favoriteпакеты, такие какsign_in_with_apple,google_fonts,geolocatorа такжеsqflite.

Сегодня мы объявляем о запускеБета-версия плагина Google Mobile Ads Flutter, Это новый SDK, который работает с AdMob и AdManager. Доступно несколько форматов рекламы, включая баннеры, встроенную рекламу, нативную рекламу и видеообъявления с вознаграждением. Мы экспериментировали с SDK с несколькими крупными клиентами, Например, крупнейшая музыкальная платформа независимых исполнителей в Латинской Америке.SuaMúsica, Теперь мы готовы открыть Google Mobile Ads Flutter SDK для более широкого использования.

Google Mobile Ads SDK for Flutter

Мы также объявляем об обновлениях некоторых основных сервисов Firebase для плагина Flutter: Аутентификация, облачная база данных, бессерверные облачные функции, облачный обмен сообщениями, облачное хранилище и анализ сбоев, Включает поддержку разумной воздушной безопасности, а также пересмотр пакетов облачных сообщений.

Dart: секретный соус Flutter

Ранее мы упоминали, что Flutter 2 можно переносить на множество различных платформ и форм-факторов. Простой переход к поддержке веб-, настольных и встроенных устройств, во многом благодаряDart, Это язык программирования Google, оптимизированный для многоплатформенной разработки.

Dart сочетает в себе уникальный набор функций для создания приложений:

  • ненавязчивая портативность, компилятор которого генерирует высокопроизводительный машинный код Intel и ARM для мобильных и настольных компьютеров, И обеспечить сильно оптимизированный вывод JavaScript для Интернета. Один и тот же исходный код платформы Flutter компилируется для всех этих целей.

  • Итеративная разработка горячей перезагрузки с сохранением состояния на настольных и мобильных устройствах, И языковые конструкции, предназначенные для асинхронных параллельных шаблонов современного программирования пользовательского интерфейса.

  • Производительность на уровне Google на всех платформах, Надежная безопасность нулевых значений гарантирует ограничения возможности нулевых значений во время выполнения и во время разработки.

Ни один другой язык не сочетает в себе все функции, такие как Dart, Может быть, поэтому ДартОдин из самых быстрорастущих языков на GitHub.

Дарт 2.12 теперь доступен, наш самый большой выпуск с версии 2.0, служба поддержкибезопасная воздушная средамодель. Надежная нулевая безопасность устраняет страшное исключение ссылки нулевого указателя, обеспечивая гарантии во время разработки и выполнения, То есть тип может содержать нулевые значения только в том случае, если разработчик явно требует обнуляемый тип. Самое главное, эта функция не является критическим изменением: Вы можете постепенно добавлять его в свой код в своем собственном темпе, и вы можете использовать инструмент миграции, который поможет вам, когда вы будете готовы.

Сегодняшнее обновление также включаетСтабильная реализация FFI, Позволяет писать высокопроизводительный код, взаимодействующий с API на основе C. Написано на флаттереНовые интегрированные инструменты разработчика и профилировщика; и множество улучшений производительности и размера, Эти улучшения могут дополнительно обновить код без перекомпиляции. Чтобы получить больше информации, видетьВыпущен Дарт 2.12Сообщение блога.

Флаттер 2: уже доступен

О Flutter 2 можно сказать слишком много. На самом деле исходная документация по слитным запросам на вытягивание состоит из 200 страниц! Пожалуйста, посетитеСтатья посвященная Flutter 2, для получения информации о многих новых функциях и улучшениях производительности, Мы думаем, что разработчики Flutter будут очень довольны и сразу же загрузят новую версию.

image of companies using Flutter 2

У нас также есть большой новый образец приложения, который демонстрирует все только что упомянутое, Этот образец создан в сотрудничестве с нашей отмеченной наградами командой дизайнеров из Эдмонтона, Канада.gskinnerпостроено в сотрудничестве.Flutter Folioприложение для скрапбукинга, Предназначен для всего вашего оборудования. Предназначен для захвата контента на небольших экранах; Поддержка большого экрана для редактирования с использованием привычек, характерных для настольных компьютеров и планшетов; Веб-платформа предназначена для обмена контентом. Весь этот специализированный контент использует одну и ту же кодовую базу с открытым исходным кодом, доступную для ознакомления.

Если вы еще не пробовали Flutter, вы обнаружите, что это серьезное обновление вашего опыта разработки приложений. Во Flutter мы предоставляем набор инструментов с открытым исходным кодом, Для создания красивых и быстрых приложений для мобильных устройств, настольных компьютеров, Интернета и встроенных устройств из единой кодовой базы. Эти приложения отвечают высоким требованиям Google, а также потребностям наших клиентов.

Flutter является бесплатным и открытым исходным кодом. Мы рады видеть, что вы создаете продукты с помощью Flutter 2!