У меня с последним обновлением Xcode, приложение на симуляторе стало умирать регулярно, по несколько раз в минуту. Можно даже сказать “быстрее всех на самом быстром процессоре M1”😀Немного помучавшись в попытках оживить все это добро, я вспомнил про превью Android Emulator и решил попробовать его. Сейчас уже вышла 3-я версия, и она выглядит вполне приятно. Из минусов разве что невозможность кастомизации параметров устройства и необходимость задать вручную путь к adb.
📌 Опробовать превью Android Emulator для m1 можно по ссылке.
#инструменты
📌 Опробовать превью Android Emulator для m1 можно по ссылке.
#инструменты
Недавно я писал про проблемы с симулятором на m1. Заключаются они в постоянном зависании приложения при запуске и во время работы. После долгих поисков, вроде бы нашел решение, которое помогло мне. Нужно выставить для Xcode режим работы с Rosetta, для этого:
👉 открыть список приложений и найти Xcode;
👉 вызвать контекстное меню и открыть свойства;
👉 активировать пункт “Открыть с помощью Rosetta”.
Надеюсь поможет и вам, если столкнетесь с подобным поведением симулятора.
#фикс
👉 открыть список приложений и найти Xcode;
👉 вызвать контекстное меню и открыть свойства;
👉 активировать пункт “Открыть с помощью Rosetta”.
Надеюсь поможет и вам, если столкнетесь с подобным поведением симулятора.
#фикс
Слышал много хорошего про стрим с разбором основ BLoС от PlugFox, но все никак не мог добраться до него, чтобы посмотреть. Но отпуск все таки дал мне эту возможность, поэтому я наконец-то посмотрел. И контент действительно отличный. На стриме разобрали:
👉 концепция BLoC и его устройство;
👉 Cubit, его устройство, отличия от BLoC, когда и как лучше использовать;
👉 пример, как можно готовить BLoC.
Что особенно важно, были затронуты общие архитектурные темы, подходы и вопросы, которые важны независимо от того, что вы используете в своем приложении, поэтому стрим будет полезен не только тем кто интересуется именно BLoC.
📌 Посмотреть стрим можно по ссылке.
P.S. Несколько дней скорее всего постов не будет, потому что отправляюсь на конференцию Secon 21, и времени будет маловато. Ну а с теми, кто тоже на нее собирается - увидимся ✌️
👉 концепция BLoC и его устройство;
👉 Cubit, его устройство, отличия от BLoC, когда и как лучше использовать;
👉 пример, как можно готовить BLoC.
Что особенно важно, были затронуты общие архитектурные темы, подходы и вопросы, которые важны независимо от того, что вы используете в своем приложении, поэтому стрим будет полезен не только тем кто интересуется именно BLoC.
📌 Посмотреть стрим можно по ссылке.
P.S. Несколько дней скорее всего постов не будет, потому что отправляюсь на конференцию Secon 21, и времени будет маловато. Ну а с теми, кто тоже на нее собирается - увидимся ✌️
Вчера вечером я вернулся с конференции Secon 21 и не могу не поделиться своими впечатлениями. Конференция вышла действительно интересная и запоминающаяся - всегда было куда сходить и послушать интересные именно вам доклады.
А еще она была офлайн и поэтому было много нетворкинга, которого так недоставало последнее время. Да и атмосфера была очень крутой - конференция прошла в комплексе современного искусства, где классические скульптуры отлично соседствовали например со стимпанк кузнечиками из металла и панк-рок группой из Пензы. Если заинтересовало, то можете проникнуться царившей там атмосферой, посмотрев фотографии в моем инстаграме, и не только в моем - по хештегам #seconru #seconnews #seconконференция #seconweekend #secon2021.
Ну и самое главное, чуть позже организаторы собираются выложить записи докладов, так что если вы что-то хотели посмотреть - у вас будет такая возможность 👍
#события
А еще она была офлайн и поэтому было много нетворкинга, которого так недоставало последнее время. Да и атмосфера была очень крутой - конференция прошла в комплексе современного искусства, где классические скульптуры отлично соседствовали например со стимпанк кузнечиками из металла и панк-рок группой из Пензы. Если заинтересовало, то можете проникнуться царившей там атмосферой, посмотрев фотографии в моем инстаграме, и не только в моем - по хештегам #seconru #seconnews #seconконференция #seconweekend #secon2021.
Ну и самое главное, чуть позже организаторы собираются выложить записи докладов, так что если вы что-то хотели посмотреть - у вас будет такая возможность 👍
#события
Иногда для решения технической задачи, которая стоит перед вами, какой-то одной технологии недостаточно. Один из таких кейсов рассказали в своей статье ребята из Hattrick IT. Им пришлось подружить Flutter и Unity для игры, в которую можно будет играть как с использованием нейробиоуправления, так и с помощью пользовательского ввода.
📌 Почитать подробнее можно в статье от eugenia.
#статья
📌 Почитать подробнее можно в статье от eugenia.
#статья
При написании приложения довольно часто нужно использовать состояние загрузки для выполнения каких-либо действий. Подойти к реализации можно совершенно по-разному. Например можно использовать пакет flutter_progress_hud. Он позволяет показать состояние загрузки в виде модального виджета. Достаточно обернуть в ProgressHUD все, что вы собираетесь заблокировать состоянием загрузки, и в нужный момент вызвать показ лодера.
К плюсам пакета можно отнести:
👉 хорошую возможность кастомизации;
👉 анимацию появления и скрытия из коробки.
📌 Попробовать библиотеку можно по ссылке.
#библиотека
К плюсам пакета можно отнести:
👉 хорошую возможность кастомизации;
👉 анимацию появления и скрытия из коробки.
📌 Попробовать библиотеку можно по ссылке.
#библиотека
Бывает нужно применить к изображению фильтр. Это может быть блюр, сепия, деформация. Во Flutter тоже есть такая возможность, более того - не только к изображению, а к целой композиции из виджетов. Для этого можно воспользоваться виджетом BackdropFilter.
Познакомиться с тем, как работает этот виджет можно в статье от Shaiq khan.
#статья
Познакомиться с тем, как работает этот виджет можно в статье от Shaiq khan.
#статья
Последнее время во всех крупных обновлениях Dart уделяют особое внимание FFI (Foreign Function Interface). Как можно понять из названия, FFI позволяет использовать вызов нативного C API из Dart кода. Осуществляется все это при помощи библиотеки ffi, основная часть которой уже встроена в Dart, а также дополнительной части с различными утилитами, которая доступна в pub.
А о том, как же всем этим пользоваться, можно почитать в статье от Maksim Lin.
#статья
А о том, как же всем этим пользоваться, можно почитать в статье от Maksim Lin.
#статья
Среди мобильных разработчиков весьма популярны сервисы, предоставляющие удобную инфраструктуру для приложений. Ярким примером является Firebase - облачная база, авторизация и многое другое. Но не Firebasом единым жив Flutter-разработчик. Отличной альтернативой в ближайшем времени ему может стать например сервис @ platform от The @ Company. Как заявляют сами разработчики упор сделан не только на создание инфраструктуры, но и на то, чтобы сделать ее максимально безопасной для данных пользователя. К тому же @ platform является opensource решением и абсолютно бесплатна. Более того, компания предоставляет реферальную программу по привлечению новых пользователей через приложения.
Почитать подробнее про @ platform можно в статье от Anthony Prakash.
#статья
Почитать подробнее про @ platform можно в статье от Anthony Prakash.
#статья
Даже далекие от общеупотребимых решений могут быть полезны. Например анимированный фон, казалось бы ну в каком мобильном приложении такое может потребоваться? Можно использовать на сплеш-экране, или воспользоваться для необычного состояния загрузки. А может быть вам придется писать геймифицированное обучающее приложение для детей и ваш дизайнер именно так увидит основной фон.
Добавить такой фон можно с помощью библиотеки animated_background:
👉 имеет набор готовых поведений, описывающих как будет выглядеть анимация;
👉 исходя из исходников, не будет большой проблемой также описать свое кастомное поведение.
Прочитать о том, как пользоваться этой библиотекой, можно в статье от Naveen Srivastava.
#статья
Добавить такой фон можно с помощью библиотеки animated_background:
👉 имеет набор готовых поведений, описывающих как будет выглядеть анимация;
👉 исходя из исходников, не будет большой проблемой также описать свое кастомное поведение.
Прочитать о том, как пользоваться этой библиотекой, можно в статье от Naveen Srivastava.
#статья
Хорошей прокачкой своих навыков в анимациях может быть выполнение понравившегося примера на Dribbble. Tony Owen в своей статье разбирает как раз такой пример. За основу он взял пример автора Pontus Wellgraf, посвященный Formula 1 и попытался реализовать его на Flutter.
📌 Каким образом он это сделал и насколько похоже на оригинал получилось, можно посмотреть в статье, или даже зачеленджить себя и сделать более точную версию.
#статья
📌 Каким образом он это сделал и насколько похоже на оригинал получилось, можно посмотреть в статье, или даже зачеленджить себя и сделать более точную версию.
#статья
Коллега из мира мобильной разработки создал свой канал Mobile Native. Артём - практикующий Android разработчик, пишет на Java и Kotlin. На своём канале он публикует полезные материалы по Android разработке – нововведения, подборки актуальных статей, анонсы мобайл ивентов. Более того, останавливаться только на Android он не планирует 💪 - в канале будут еще и материалы, посвященные iOS.
Подписывайтесь на @mobile_native, полезно будет для любого уровня разработчиков от Junior до Senior.
Подписывайтесь на @mobile_native, полезно будет для любого уровня разработчиков от Junior до Senior.
Всем привет! Интересует ваше мнение: Когда вы выбираете библиотеку, влияет ли на ваш выбор ее нахождение в монорепе (репозиторий с множеством пакетов, например https://github.com/fluttercommunity/plus_plugins)?
Anonymous Poll
8%
Отдам предпочтение монорепе, если нужный пакет есть
18%
Отдам предпочтение одиночному решению с отдельным репозиторием
37%
Без разницы, при выборе не опираюсь на этот параметр совсем
37%
Не смотрю на репозиторий, только pub.dev
Недавно вышел очередной выпуск Flutter Dev Podcast. Тема его на этот раз весьма грустная - компания Wrike, все эти годы бывшая, пожалуй, главным амбассадором языка Dart в России, а может быть и в мире, объявила об отказе от Dart и смене технологического стека. На подкаст пришли ребята из Wrike, чтобы рассказать о причинах и будущем.
Участники выпуска: Евгений Сатуров (Surf), Александр Денисов (EPAM), Евгений Кот (Wrike), Иван Синеговский (Wrike).
🎧Послушать подкаст можно в Apple Podcasts, Яндекс.Музыка, Google Podcasts, Spotify.
#подкасты
Участники выпуска: Евгений Сатуров (Surf), Александр Денисов (EPAM), Евгений Кот (Wrike), Иван Синеговский (Wrike).
🎧Послушать подкаст можно в Apple Podcasts, Яндекс.Музыка, Google Podcasts, Spotify.
#подкасты
Недавно для VSCode вышло обновление плагина для Flutter от Dart Code. В релизе:
👉 Dependencies View - механизм просмотра цепочки транзитивных зависимостей;
👉 добавлен пункт контекстного меню, позволяющий создать конфигурацию запуска;
👉 множество исправлений и улучшений дебагера, редактора и взаимодействия с Flutter.
📌Ознакомиться с более подробным списком можно по ссылке.
#обновление
👉 Dependencies View - механизм просмотра цепочки транзитивных зависимостей;
👉 добавлен пункт контекстного меню, позволяющий создать конфигурацию запуска;
👉 множество исправлений и улучшений дебагера, редактора и взаимодействия с Flutter.
📌Ознакомиться с более подробным списком можно по ссылке.
#обновление
Хороший способ ворваться в IT-индустрию - это стажировка. От вас обычно еще ничего не требуют, при этом помогают расти и еще часто платят пусть и небольшие, но деньги. Многие мои знакомые, да и я сам, именно так и начали свой путь в IT. Если и вам этот вариант по душе, то у меня есть хорошие новости - мы в Surf набираем стажеров, чтобы помочь им сделать первые шаги в профессии, и вполне может быть по окончании стать коллегами 🤙 Если переживаете, что не хватает знаний, то на входе даём небольшое тестовое задание и можно оценить свой уровень. Ну а если знаний намного больше чем нужно для стажировки, то у нас есть еще актуальная вакансия сразу на мидла 💪
Откликнуться можно по ссылкам: стажировка и middle.
#вакансия
Откликнуться можно по ссылкам: стажировка и middle.
#вакансия
Плагин Flutter для IntelliJ IDE тоже недавно был обновлен. Это обновление принесло следующие изменения:
👉 запуск тестов с отображением покрытия кода;
👉 продолжение улучшения поддержки Embedded Browser для MacOS Big Sur;
👉 множество внутренних улучшений и исправлений плагина.
Ознакомиться с более подробным списком можно по ссылке.
#обновление
👉 запуск тестов с отображением покрытия кода;
👉 продолжение улучшения поддержки Embedded Browser для MacOS Big Sur;
👉 множество внутренних улучшений и исправлений плагина.
Ознакомиться с более подробным списком можно по ссылке.
#обновление
Недавно вышло обновление для Flutter DevTools. В релизе:
👉 различные улучшения интерфейса, включая компактный режим;
👉 добавлена возможность диагностировать зависания связанные с компиляцией шейдеров;
👉 добавлен показ сводки для событий UI потока.
Помимо перечисленного, обновление содержит множество исправлений и улучшений, с полным списком которых можно ознакомиться по ссылке.
#обновление
👉 различные улучшения интерфейса, включая компактный режим;
👉 добавлена возможность диагностировать зависания связанные с компиляцией шейдеров;
👉 добавлен показ сводки для событий UI потока.
Помимо перечисленного, обновление содержит множество исправлений и улучшений, с полным списком которых можно ознакомиться по ссылке.
#обновление
Интерфейсы в стиле неоморфизм могут выглядеть весьма интересно, однако реализация их часто довольно затратна. Множество теней, плавные переходы этих теней при смене состояния требуют много времени на проработку. Упростить вам эту задачу может UIKit в стиле неоморфизма, например flutter_neumorphic. Он содержит:
👉 NeumorphicButton;
👉 NeumorphicRadio;
👉 NeumorphicCheckbox;
👉 NeumorphicText;
👉 NeumorphicIcon;
👉 NeumorphicToggle;
👉 NeumorphicSlider;
👉 NeumorphicSwitch.
📌 Этими и множеством других виджетов, можно воспользоваться из библиотеки flutter_neumorphic, доступной по ссылке.
#библиотека
👉 NeumorphicButton;
👉 NeumorphicRadio;
👉 NeumorphicCheckbox;
👉 NeumorphicText;
👉 NeumorphicIcon;
👉 NeumorphicToggle;
👉 NeumorphicSlider;
👉 NeumorphicSwitch.
📌 Этими и множеством других виджетов, можно воспользоваться из библиотеки flutter_neumorphic, доступной по ссылке.
#библиотека
Мы с коллегам из Surf продолжаем начатую ранее серию мероприятий. В первой части мы разобрали проблемные решения примера и исправили их, а также покрыли различными типами тестов полученный код. В этот раз мы продолжим пытать тот же самый пример, но уже в другом направлении. Речь пойдет о локализации приложения:
👉 как спроектировать приложение сразу готовым к локализации, даже если пока ее и в планах нет;
👉 разберем динамическую смену локализации;
👉 рассмотрим plurals;
👉 поговорим про локализацию бандла приложения.
🗓 Стартуем 20 июля в 18:30 мск, планируем закончить к 20:00
📌 Зарегистрироваться можно по ссылке.
#анонс
👉 как спроектировать приложение сразу готовым к локализации, даже если пока ее и в планах нет;
👉 разберем динамическую смену локализации;
👉 рассмотрим plurals;
👉 поговорим про локализацию бандла приложения.
🗓 Стартуем 20 июля в 18:30 мск, планируем закончить к 20:00
📌 Зарегистрироваться можно по ссылке.
#анонс
Большинство программистов пользуются системами контроля версий и сервисами для хостинга и управления удаленными репозиториями. И если ваш выбор - GitHub, то стоит обратить внимание на последнее обновление, в нем много интересного:
👉 переработана система проблем, доступна в бета-версии;
👉 запущен в техническое превью GitHub Copilot - искусственный интеллект помощник;
👉 дискуссии интегрированы с GitHub Actions;
👉 расширены возможности drag-and-drop управления в десктоп версии;
👉 GitHub Packages Container для публикации, управления и использования контейнеров на GitHub.
📌 С полным списком нововведений можно ознакомиться по ссылке.
#обновление
👉 переработана система проблем, доступна в бета-версии;
👉 запущен в техническое превью GitHub Copilot - искусственный интеллект помощник;
👉 дискуссии интегрированы с GitHub Actions;
👉 расширены возможности drag-and-drop управления в десктоп версии;
👉 GitHub Packages Container для публикации, управления и использования контейнеров на GitHub.
📌 С полным списком нововведений можно ознакомиться по ссылке.
#обновление