Flutter на рабочем столе: у Electron появился еще один соперник

Flutter
Норберт Переводчик |

По сути, Flutter — это автономный двоичный исполняемый файл. Мало того, что это изменило способ игры на мобильных устройствах, его также нельзя недооценивать на настольных устройствах. Напишите один раз, разверните изначально на Android, iOS, Windows, Mac и Linux и поделитесь всей бизнес-логикой в ​​Интернете через AngularDart, что также является его основной функцией.

Собственный настольный клиент ускоряет мобильную разработку

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

Время начала

Первый — запустить эмулятор Android и запустить Gradle.

Анимация ниже показывает холодную загрузку эмулятора и запуск стандартного приложения Flutter. Я заснял только 2 минуты 40 секунд, и вы можете видеть, что за это время может произойти многое.

Но что бы вы подумали, если бы я сказал вам, что вы можете запустить приложение менее чем за 10 секунд?

Запуск собственных приложений избавляет от всех накладных расходов, связанных с запуском эмулятора Android и запуском Gradle.

посмотри на это:

Обратите внимание, что вам не нужно покидать IntelliJ. Мы разработали инструменты, необходимые для использования Flutter в качестве собственного приложения, и оно работает со всеми IDE Flutter.

Изменение размера во время выполнения

Как и в любом другом приложении, вам нужно протестировать макеты разных размеров, так что же вам нужно сделать?

Вы просите своих друзей использовать разные телефоны или создаете набор эмуляторов, чтобы убедиться, что ваши макеты работают на каждом устройстве.

Это хлопотно для меня. Можем ли мы сделать это проще?

Могу!

Используйте ресурсы на вашем ПК

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

Не лучше ли просто использовать встроенное средство выбора файлов, чтобы выбрать нужные файлы?

Горячая перезагрузка и отладка

Возможности горячей перезагрузки и отладки необходимы каждому продуктивному инженеру.

использование памяти

Для тех, кто использует ноутбуки или менее оснащенные компьютеры, очень важна память.

Эмулятор Android занимает около 1 ГБ памяти. А теперь представьте, что для тестирования чат-приложения или чего-то подобного вам нужно запустить IntelliJ и прожорливый к памяти Chrome.

Поскольку встроенный модуль работает изначально, эмулятор Android не требуется. Это делает его объем памяти меньше.

Родное настольное приложение

Простого запуска приложения Flutter на рабочем столе недостаточно для полноценного настольного приложения, готового к публикации. Это похоже на запуск мобильного приложения на рабочем столе.

Чего не хватает? много!

Наведения, изменения курсора, взаимодействие с колесом прокрутки и многое другое.

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

Это результат запуска точно такого же кода на эмуляторе Android.

Разрабатывайте как приложения для Android, так и настольные приложения.

Отображение виджета на рабочем столе

Наведение:

курсор:

Разработайте действительно кроссплатформенное приложение, в том числе для рабочего стола небольшие части

Большинство виджетов, которые вы создаете, общедоступны, например кнопки, индикаторы загрузки и т. д.

Виджеты, которые должны отображаться по-разному в зависимости от платформы, можно легко инкапсулировать с помощью свойства TargetPlatform.

Виджеты, такие как CursorWidget, также могут быть включены в версию для Android.

страница

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

Используйте PageLayoutWidget, чтобы легко создавать точные макеты для каждой платформы.

Также есть хорошая поддержка планшетов по умолчанию.

плагин

При использовании плагинов, которые также поддерживают настольные встраиватели, изменения кода Flutter не требуются.

Когда выйдет код?

скоро. Тем не менее, проект все еще находится в стадии бета-тестирования, и вполне вероятно, что в ближайшем будущем произойдут некоторые изменения.

Наша цель — в ближайшем будущем выпустить продукты, которые легко установить, настроить и использовать.

Английский оригинал:

https://medium.com/flutter-community/flutter-on-desktop-a-real-competitor-to-electron-4f049ea6b061

Рекомендация по активности

2019 年 4 月 25-27 日北京国际会议中心,QCon 与您相约获得启发,共同关注行业趋势与工程实践。 нажмите"читать оригинал "Или определите QR-код, чтобы узнать о тщательном планировании 10-летия QCon, скидка 30% при раннем бронировании, скидка 2640 юаней. 0410