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

Автор канала - Михаил Зотьев (@mbixjkee).
Download Telegram
Вышел очередной выпуск 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.

#статья
Последнее время во всех крупных обновлениях Dart уделяют особое внимание FFI (Foreign Function Interface). Как можно понять из названия, FFI позволяет использовать вызов нативного C API из Dart кода. Осуществляется все это при помощи библиотеки ffi, основная часть которой уже встроена в Dart, а также дополнительной части с различными утилитами, которая доступна в pub.

А о том, как же всем этим пользоваться, можно почитать в статье от Maksim Lin.

#статья
Среди мобильных разработчиков весьма популярны сервисы, предоставляющие удобную инфраструктуру для приложений. Ярким примером является Firebase - облачная база, авторизация и многое другое. Но не Firebasом единым жив Flutter-разработчик. Отличной альтернативой в ближайшем времени ему может стать например сервис @ platform от The @ Company. Как заявляют сами разработчики упор сделан не только на создание инфраструктуры, но и на то, чтобы сделать ее максимально безопасной для данных пользователя. К тому же @ platform является opensource решением и абсолютно бесплатна. Более того, компания предоставляет реферальную программу по привлечению новых пользователей через приложения.

Почитать подробнее про @ platform можно в статье от Anthony Prakash.

#статья
Даже далекие от общеупотребимых решений могут быть полезны. Например анимированный фон, казалось бы ну в каком мобильном приложении такое может потребоваться? Можно использовать на сплеш-экране, или воспользоваться для необычного состояния загрузки. А может быть вам придется писать геймифицированное обучающее приложение для детей и ваш дизайнер именно так увидит основной фон.
Добавить такой фон можно с помощью библиотеки animated_background:

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

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

#статья
Хорошей прокачкой своих навыков в анимациях может быть выполнение понравившегося примера на Dribbble. Tony Owen в своей статье разбирает как раз такой пример. За основу он взял пример автора Pontus Wellgraf, посвященный Formula 1 и попытался реализовать его на Flutter.

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

#статья
Коллега из мира мобильной разработки создал свой канал Mobile Native. Артём - практикующий Android разработчик, пишет на Java и Kotlin. На своём канале он публикует полезные материалы по Android разработке – нововведения, подборки актуальных статей, анонсы мобайл ивентов. Более того, останавливаться только на Android он не планирует 💪 - в канале будут еще и материалы, посвященные iOS.

Подписывайтесь на @mobile_native, полезно будет для любого уровня разработчиков от Junior до Senior.
Всем привет! Интересует ваше мнение: Когда вы выбираете библиотеку, влияет ли на ваш выбор ее нахождение в монорепе (репозиторий с множеством пакетов, например https://github.com/fluttercommunity/plus_plugins)?
Anonymous Poll
8%
Отдам предпочтение монорепе, если нужный пакет есть
18%
Отдам предпочтение одиночному решению с отдельным репозиторием
37%
Без разницы, при выборе не опираюсь на этот параметр совсем
Недавно вышел очередной выпуск Flutter Dev Podcast. Тема его на этот раз весьма грустная - компания Wrike, все эти годы бывшая, пожалуй, главным амбассадором языка Dart в России, а может быть и в мире, объявила об отказе от Dart и смене технологического стека. На подкаст пришли ребята из Wrike, чтобы рассказать о причинах и будущем.
Участники выпуска: Евгений Сатуров (Surf), Александр Денисов (EPAM), Евгений Кот (Wrike), Иван Синеговский (Wrike).

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

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

👉 Dependencies View - механизм просмотра цепочки транзитивных зависимостей;
👉 добавлен пункт контекстного меню, позволяющий создать конфигурацию запуска;
👉 множество исправлений и улучшений дебагера, редактора и взаимодействия с Flutter.

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

#обновление
Хороший способ ворваться в IT-индустрию - это стажировка. От вас обычно еще ничего не требуют, при этом помогают расти и еще часто платят пусть и небольшие, но деньги. Многие мои знакомые, да и я сам, именно так и начали свой путь в IT. Если и вам этот вариант по душе, то у меня есть хорошие новости - мы в Surf набираем стажеров, чтобы помочь им сделать первые шаги в профессии, и вполне может быть по окончании стать коллегами 🤙 Если переживаете, что не хватает знаний, то на входе даём небольшое тестовое задание и можно оценить свой уровень. Ну а если знаний намного больше чем нужно для стажировки, то у нас есть еще актуальная вакансия сразу на мидла 💪

Откликнуться можно по ссылкам: стажировка и middle.

#вакансия
Плагин Flutter для IntelliJ IDE тоже недавно был обновлен. Это обновление принесло следующие изменения:

👉 запуск тестов с отображением покрытия кода;
👉 продолжение улучшения поддержки Embedded Browser для MacOS Big Sur;
👉 множество внутренних улучшений и исправлений плагина.

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

#обновление