es
Feedback
Flutter Tech-Lead Notes

Flutter Tech-Lead Notes

Ir al canal en Telegram
274
Suscriptores
Sin datos24 horas
+47 días
+1830 días
Archivo de publicaciones
Пора рассказать, что я делал в СПб. Впервые за долгое время я полетел куда-то без конференций, митапов и всего такого. Те, кт
+1
Пора рассказать, что я делал в СПб. Впервые за долгое время я полетел куда-то без конференций, митапов и всего такого. Те, кто давно подписан на канал, знают, что я болельщик Зенита. Поэтому тут все просто - матч со Спартаком. А сидел я на первых рядах и был отличный обзор поля.

Another way to home
Another way to home

«Повезло» мне с погодой в Питере((( Вроде все нормально, но потом жуткий дождь и ветер. Чуть зонтик не сломал. Зато на воскресенье обещают хорошую погоду

Ну вот и все, через полчаса уже буду в воздухе
Ну вот и все, через полчаса уже буду в воздухе

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

А вот и третий раз подъехал) Пора уже реально запомнить, чтобы еще минимум 2 раза такое не случилось в этом году

Hola, Amigos! На связи Flutter-команда агентства продуктовой разработки Amiga. Недавно мы перевели для вас серию статей про м
Hola, Amigos! На связи Flutter-команда агентства продуктовой разработки Amiga. Недавно мы перевели для вас серию статей про модульное тестирование, но одна важная тема осталась за бортом. Сегодня познакомимся с тестированием BLoC при помощи модульных тестов. В новой статье: -возможности библиотеки bloc_test, -примеры простых модульных тестов, -примеры тестирования сложных событий. Читайте по ссылке на Habr. Ставьте реакции, если было полезно! А также делитесь в чате, с какими трудностями встречаетесь вы при тестировании приложений?

Вот и первая авторская статья на Хабр

И еще один анонс на сентябрь. В этот раз я буду выступать в своем любимом Санкт-Петербурге. Там мы поговорим про безопасность мобильных приложений, а именно про шифрование данных и доступ к ним только у пользователя. Что? Стачка Когда? 27-28 сентября Спикер: Павел Гершевич Тема: Это больше, чем биометрия. Или как сделать локальную аутентификацию в мобильном приложении. https://spb24.nastachku.ru/

Обновление Flutter 3.24 принесло старый баг (его фиксили, но он вернулся), который я еще не встречал. Воспроизводится не на всех приложениях. Что произошло: При сборке релизного Android, если у зависимостей compileSdkVersion не 34 (Android 14), то может произойти ошибка при объединении ресурсов (на дебажной не воспроизводится). На одном из пет-проектов упало прямо на гуловской библиотеке (сначала упало на CI/CD, потом я смог воспроизвести). * What went wrong: Execution failed for task ':google_mlkit_commons:verifyReleaseResources'. > A failure occurred while executing com.android.build.gradle.tasks.VerifyLibraryResourcesTask$Action > Android resource linking failed ERROR:/Users/user/build/**/intermediates/merged_res/release/values/values.xml:221: AAPT: error: resource android:attr/lStar not found. Решаем так (скорее всего решение костыльное, но оно работает): В файл android/build.gradle нужно добавить такой код: subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" } subprojects { afterEvaluate { project -> if (project.plugins.hasPlugin("com.android.application") || project.plugins.hasPlugin("com.android.library")) { project.android { compileSdkVersion 34 buildToolsVersion "34.0.0" } } } } subprojects { project.evaluationDependsOn(':app') } Вот и все) Приложение начнет собираться

Пришло время первых анонсов осеннего сезона. Это будет интересно и увлекательно, так как я подготовил для вас серию докладов. 7 сентября мы встретимся на DevFest в третьем по населению городе Сибири - Омске (я недавно смотрел, мой родной Красноярск уже больше). Там я расскажу, зачем нам нужно логирование, какое оно бывает и что с этим всем делать. Что? DevFest Omsk Когда? 5-8 сентября 2024 Спикер: Павел Гершевич Тема: Логирование на Flutter или какие метрики помогут в оптимизации https://www.devfestomsk.ru/schedule

Как проще всего поучаствовать в улучшении Flutter? Самый простой способ - не самому что-то поправить, а найти баг. В одном из наших приложений такой нашелся, причем на старой версии. Разработчик буквально только что закончил оформление issue на этот баг - https://github.com/flutter/flutter/issues/153426

А вот и видео с весны начали подезжать. Первым стал Mobius - https://www.youtube.com/watch?v=ZwXCEo3Cduw

Flutter 3.24 Hola, Amigos! Срочное включение! Вышла новая версия Flutter 3.24. В режиме турбо перевели статью для вас и делим
Flutter 3.24 Hola, Amigos! Срочное включение! Вышла новая версия Flutter 3.24. В режиме турбо перевели статью для вас и делимся по ссылке ⚙️ В этом релизе представлена предварительная версия Flutter GPU, которая позволяет использовать продвинутую графику и 3D-сцены прямо из Flutter. Web-приложения теперь могут встраивать несколько Flutter View, что улучшает их гибкость. А ещё добавлена монетизация с видео рекламой, чтобы получать максимальную выгоду. ⚙️ Читать здесь ⚙️ Ставить лайки тут и там ⚙️ Обсуждать сюда Всем хорошего кода! 🙂

Вчера убили YouTube, вернее замедлили так, что невозможно стало пользоваться. Даже включенный QUIC не помогает. Значит, нужно искать способ работы с DPI на macOS (для Windows уже давно все используют GoodbyeDPI). В итоге я его нашел на просторах интернета: Для этого нам потребуется терминал. Сначала установим программу нужную: curl -fsSL https://raw.githubusercontent.com/xvzc/SpoofDPI/main/install.sh | bash -s darwin-amd64 Добавим ее в переменную PATH (нужно для запуска из консоли) export PATH=$PATH:~/.spoof-dpi/bin И запустим spoof-dpi Но не всегда срабатывает (у меня не сработало). Поэтому запускаем еще раз, но с настройками: spoof-dpi --enable-doh --window-size 0 И вы получите на выходе работающий YouTube в любом браузере на macOS

Hola, Amigos! На связи Павел Гершевич, Flutter Team Lead в Amiga. Делимся с вами 4 частью полного гайда по тестированию в Flu
Hola, Amigos! На связи Павел Гершевич, Flutter Team Lead в Amiga. Делимся с вами 4 частью полного гайда по тестированию в Flutter, которая посвящена продвинутому модульному тестированию. Мы уже рассмотрели: ⚙️ Unit-тестирование, Widget-тестирование, Golden-тесты и интеграционное тестирование ⚙️ Простые модульные (Unit) тесты ⚙️ Использование техник Mocking и Stubbing для тестирования классов В новой статье еще больше усложнен класс LoginViewModel при помощи создания переменной _cache для кеширования результата, полученного от SharedPreferences. Продолжение читайте по ссылке. Fun fact: думали, что гайд состоит из 6 статей, а оказалось, что есть еще 3, только уже не на английском, а на вьетнамском языке. Пожелайте нам удачи!

Все стало еще интереснее. Сборка приложения после смены библиотеки не дошла до Test Flight. В чем проблема? В том, что эта библиотека объединяет несколько и ей нужно разрешение микрофона. Поэтому нужно использовать flutter_widget_from_html_core

На проекте, который сейчас делаю на работе встретился интересный баг. У нас используется flutter_html, и если мы передадим ему список внутри абзаца (например <p><ul>...</ul></p>), то снизу появится отступ размером с сам список. В итоге, оказалось, что это баг самой библиотеки, поэтому решение было достаточно быстрым - меняем. Поменял на flutter_widget_from_html. Она, как мне показалось, чуть более удобная даже.

Экосистема Apple спасает в самом необычном случае. Сейчас телега работает еле-еле, но мне нужно было отправить файл. 10 минут ожидания на 0% означают, что нужно искать обходные пути. И им для меня стал AirDrop, так как с телефона в телегу хоть медленно, но заливается. А как у вас обстоят дела с доступом в телегу?

Итак. Поступают плохие новости. YouTube все-таки замедляют. У меня это началось где-то неделю назад, может чуть больше. Немного хронологии: - Начали подтупливать видео раз в несколько минут. "Ну и пофиг" - Грузит только 720p. "Ок, не страшно" - Ростелеком заявили о серверах (что оказалось ложью) "Явно врут, не может 1-2 сервера из примерно 1000 влиять на всех в стране" - Грузит только 480p. "Ну, вспомним 2010" - Еле грузит 320p. и почти сразу выходит заявление о замедлении "Я же говорил, но что делать то?" В итоге чисто для просмотра роликов перехожу на Google Chrome, так как там есть метод обхода, надеюсь постоянный. Это экспериментальный протокол QUIC. И это действительно работает. Чтобы включить у себя в Chrome или любом другом браузере на базе Chromium (Edge, Яндекс.Браузер и т. д.) - перейдите на chrome://flags/#enable-quic и первым в списке будет он. Нужно, чтобы он был Enabled.