Oh, my Flutter
4.95K subscribers
1.18K photos
6 videos
1.11K links
Всё о Flutter-разработке. Новости, статьи, анонсы, вакансии и многое другое. Disclaimer: все публикуемое является частным мнением, свободно распростаняемой информацией, и не содержит рекламных интеграций.

Автор канала - Михаил Зотьев (@mbixjkee).
Download Telegram
Как мобильному разработчику зарабатывать еще больше?

По шагам:

1. Зарулить на Мир.Труд.Мобайл 27 мая. Free🔥
2. Послушать спикеров из разработки и UI/UX про тренды в мобайле (Sberbank, Instagram, Surf, Redmadrobot, hh и тд)
3. Познакомиться с другими разрабами и дизайнерами в виртуальном чате
4. Узнать последние тренды, фичи, секретные секретики про рынок мобильных приложений, платформы, языки и интерфейсы
5. Объявить себя самым умным, прозорливым и дорогим специалистом

Регистрируйся тут.

Будет много интересных и полезных докладов, в том числе мой коллега Евгений Сатуров расскажет про типы модульных тестов на Flutter.

🏕 Если хочешь вживую поболтать со спикерами и потусить на даче в Иннополисе — горит 200 билетов от 5 тыщ рублей. Забирай здесь. Промокод на скидку 5%: ohmyflutter
После перерыва в предыдущем году, конференция Secon возвращается, еще и в офлайн формате. Она пройдет 19-20 июня в Пензе и уже сейчас заявлено огромное количество докладов по различным темам: от Digital Art до ML. Мобильная разработка тоже будет, более того будет и Flutter 💪. Я тоже решил съездить и выступить там с докладом, так что приглашаю всех желающих послушать, обсуждать и пообщаться.

📌 Узнать подробнее о конференции и купить билеты можно по ссылке.
Компания Google наконец выпустила Fuchsia OS. Правда в стиле известного персонажа - только я вам ее не отдам, потому что у вас Nest Hub нет.

Обновление с Fuchsia будет поставляться постепенно в течении ближайших месяцев, обладателям колонок Nest Hub первого поколения. Будем ждать более широкого покрытия устройств, чтобы опробовать.

📌 Почитать подробнее можно по ссылке.

#события
На Google IO был представлен релиз Flutter 2.2. Давайте рассмотрим подробнее, что же принесло нам это обновление?

👉 поддержка Dart 2.13;
👉 улучшения поддержки Web;
👉 оптимизации смены страниц для Cupertino;
👉 время установки обновленной версии приложения для iOS сократилось на 40%;
👉 добавлены новые иконки Material;
👉 улучшения при работе с текстом;
👉 упрощение работы со скроллом;
👉 обновление экосистемы и тулинга.

Помимо всего этого в превью:

👉 улучшение работы с шейдерами на Metal;
👉 deferred components для Android;
👉 UWP (Universal Windows Platform) для десктоп;

📌 Почитать подробнее можно в анонсе от Chris Sells.

#обновление
На IO нам показали диво-дивное и чудо-чудное, фотобудку, которая всех покорила(нет). А если без шуток, то кейс все равно интересный и достойный внимания.
Само приложение написано на Flutter, ориентированно на web платформу и использует Firebase сервисы.

А о том, как же его создавали, можно прочитать в статье от команды Very Good Ventures, которые и занимались разработкой.

#статья
На Google IO был представлен интересный сервис - Flutter Flow. Он предоставляет визуальный редактор, для построения Flutter приложения. Он позволяет:

👉 простым перетаскиванием элементова строить UI;
👉 просматривать как будет выглядеть результат на различных устройствах;
👉 использовать готовые шаблоны (в платной версии);
👉 скачать код, собранного приложения.

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

📌 Попробовать сервис можно по ссылке.

#сервис
Covid добавил в жизнь человечества не только бесконечные проблемы и ограничения, но и широкий простор для полета фантазий - что можно сделать удобнее в текущих реалиях. Как насчет научить программу определять в маске ли человек? Да пожалуйста - берем Flutter, teachablemachine и вуаля 😀.

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

#статья
Во Flutter есть виджет GridView, который умеет располагать дочерние объекты упорядочено по сетке. Он доступен из коробки. Но вот чего в нем нет, так это возможности кастомизировать пользователю порядок элементов. Зато эта возможность есть в пакете drag_and_drop_gridview. Помимо стандартного поведения GridView, добавляется:

👉 возможность перетаскиванием поменять порядок;
👉 настроить поведение - будут ли элементы меняться местами, или будет происходить сдвиг;
👉 запретить для некоторых элементов перетаскивание.

Ознакомиться с библиотекой можно по ссылке.

#библиотека
На днях вышло обновление плагина Flutter для IntelliJ IDE. В этот релиз вошло:

👉 возможность запуска интеграционных тестов из интерфейса;
👉 поддержка Embedded Browser для MacOS Big Sur (можно отключить);
👉 поддержка null-safety для Live Templates;
👉 исправление поведения step-over при дебаге асинхронного вызова.

Ознакомиться с более подробным списком можно по ссылке.

#обновление
Для VSCode также вышло обновление плагина для Flutter от Dart Code. В релизе:

👉 улучшение работы в режиме профилирования;
👉 сниппеты для Launch.json;
👉 разделение дерева зависимостей на прямые, разработки и транзитивные;
👉 различные мелкие исправления и улучшения для дебага и редактора.

Ознакомиться с более подробным списком можно по ссылке.

#обновление
Вышел очередной выпуск Flutter Dev Podcast. Недавно прошел Google I/O и мы решили не откладывать в долгий ящик, а собраться и обсудить что же нового он нам принес. В этот раз у микрофона: бессменный ведущий подкаста Евгений Сатуров (Surf), Александр Денисов (EPAM), Кирилл Адещенко (Россельхозбанк), Светлана Кривошеева (Effective) и я, Михаил Зотьев (Surf).

🎧Послушать подкаст можно в Apple Podcasts, Яндекс.Музыка, Google Podcasts, Spotify.

#подкасты
Иногда в приложении нужно дать пользователю возможность прикрепить различные ресурсы. В таком случае можно воспользоваться решением flutter_wechat_assets_picker. Этот пикер:

👉 как следует из названия, стилизован под WeChat;
👉 позволяет работать с различными типами ассетов - фотографии, аудио, видео;
👉 имеет настраиваемые опции фильтрации;
👉 позволяет настроить тему для отображения.

📌 Воспользоваться библиотекой можно по ссылке.

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

📌 Посмотреть пример того, как это можно сделать в статье по ссылке.

#статья
Flutter может во всё большее количество платформ. И разработчикам нужно успевать мочь за ним. Ну или хотя бы оставаться в курсе актуальных новостей всех этих платформ.

Одним из каналов, который поможет в случае с Android, является Android Live. В нем можно найти актуальные новости, актуальные тренды от автора канала Александра Горшкова, который является практикующим Android-разработчиком с более, чем 6-летним опытом.

📌 Подписывайся и будь в курсе, происходящего в мире Android.
У меня с последним обновлением Xcode, приложение на симуляторе стало умирать регулярно, по несколько раз в минуту. Можно даже сказать “быстрее всех на самом быстром процессоре M1”😀Немного помучавшись в попытках оживить все это добро, я вспомнил про превью Android Emulator и решил попробовать его. Сейчас уже вышла 3-я версия, и она выглядит вполне приятно. Из минусов разве что невозможность кастомизации параметров устройства и необходимость задать вручную путь к adb.

📌 Опробовать превью Android Emulator для m1 можно по ссылке.

#инструменты
Недавно я писал про проблемы с симулятором на m1. Заключаются они в постоянном зависании приложения при запуске и во время работы. После долгих поисков, вроде бы нашел решение, которое помогло мне. Нужно выставить для Xcode режим работы с Rosetta, для этого:

👉 открыть список приложений и найти Xcode;
👉 вызвать контекстное меню и открыть свойства;
👉 активировать пункт “Открыть с помощью Rosetta”.

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

#фикс
Слышал много хорошего про стрим с разбором основ BLoС от PlugFox, но все никак не мог добраться до него, чтобы посмотреть. Но отпуск все таки дал мне эту возможность, поэтому я наконец-то посмотрел. И контент действительно отличный. На стриме разобрали:

👉 концепция BLoC и его устройство;
👉 Cubit, его устройство, отличия от BLoC, когда и как лучше использовать;
👉 пример, как можно готовить BLoC.

Что особенно важно, были затронуты общие архитектурные темы, подходы и вопросы, которые важны независимо от того, что вы используете в своем приложении, поэтому стрим будет полезен не только тем кто интересуется именно BLoC.

📌 Посмотреть стрим можно по ссылке.

P.S. Несколько дней скорее всего постов не будет, потому что отправляюсь на конференцию Secon 21, и времени будет маловато. Ну а с теми, кто тоже на нее собирается - увидимся ✌️
Вчера вечером я вернулся с конференции Secon 21 и не могу не поделиться своими впечатлениями. Конференция вышла действительно интересная и запоминающаяся - всегда было куда сходить и послушать интересные именно вам доклады.
А еще она была офлайн и поэтому было много нетворкинга, которого так недоставало последнее время. Да и атмосфера была очень крутой - конференция прошла в комплексе современного искусства, где классические скульптуры отлично соседствовали например со стимпанк кузнечиками из металла и панк-рок группой из Пензы. Если заинтересовало, то можете проникнуться царившей там атмосферой, посмотрев фотографии в моем инстаграме, и не только в моем - по хештегам #seconru #seconnews #seconконференция #seconweekend #secon2021.

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

#события
Иногда для решения технической задачи, которая стоит перед вами, какой-то одной технологии недостаточно. Один из таких кейсов рассказали в своей статье ребята из Hattrick IT. Им пришлось подружить Flutter и Unity для игры, в которую можно будет играть как с использованием нейробиоуправления, так и с помощью пользовательского ввода.

📌 Почитать подробнее можно в статье от eugenia.

#статья
При написании приложения довольно часто нужно использовать состояние загрузки для выполнения каких-либо действий. Подойти к реализации можно совершенно по-разному. Например можно использовать пакет flutter_progress_hud. Он позволяет показать состояние загрузки в виде модального виджета. Достаточно обернуть в ProgressHUD все, что вы собираетесь заблокировать состоянием загрузки, и в нужный момент вызвать показ лодера.

К плюсам пакета можно отнести:

👉 хорошую возможность кастомизации;
👉 анимацию появления и скрытия из коробки.

📌 Попробовать библиотеку можно по ссылке.

#библиотека
Бывает нужно применить к изображению фильтр. Это может быть блюр, сепия, деформация. Во Flutter тоже есть такая возможность, более того - не только к изображению, а к целой композиции из виджетов. Для этого можно воспользоваться виджетом BackdropFilter.

Познакомиться с тем, как работает этот виджет можно в статье от Shaiq khan.

#статья