Обложка канала

Android Good Reads. Страница 17

2600 @droidgr

Самые интересные статьи, видео и новости, связанные с Android разработкой. Не больше трёх материалов в день.

  • Android Good Reads

  • Android Good Reads

    ViewBinding и утечки памяти - Часто встречаются рекомендации выставлять view binding в null, чтобы избежать утечек памяти - Жизненный цикл View дестко привязан к Activity, поэтому в этом случае самостоятельно занулять не надо, все решится само - В случае фрагментов ситуация другая – вью могут создаваться и уничтожаться, поэтому освобождать view binding вручную нужно - Для ViewHolder выставлять view binding в null тоже не требуется
  • Android Good Reads

    Пишем расширения для браузера на Kotlin Идея для пет-проекта – написать собственное расширение для Chrome, которое делает что-то полезное. Шаблон по ссылке даст вам возможность не трогать JavaScript и написать его на чистом Kotlin.
    GitHub - DATL4G/Kromex: Kromex is an extension template written in Kotlin, mainly made for Chrome

    Kromex is an extension template written in Kotlin, mainly made for Chrome - GitHub - DATL4G/Kromex: Kromex is an extension template written in Kotlin, mainly made for Chrome

    GitHub
  • Реклама

  • Android Good Reads

    Новый онбординг в KMM Команда Kotlin сильно переработала документацию для KMM, в частности – последовательность статей, заданий и семплов кода, которые помогают новичкам вкатиться в SDK.
  • Android Good Reads

    Особенности рекомпозиции в Compose - Из-за особенностей компиляции лямбд, Compose может не считать их Stable - Data classes, содержащиеся в отличных от текущего модулях, не будут помечены Stable по умолчанию - Часто меняющийся стейт может оказывать очень сильное влияние на перфоманс
    Gotchas in Jetpack Compose Recomposition | Stitch Fix Technology – Multithreaded

    Understanding recomposition in Jetpack Compose is critical to optimizing application performance. Here are some

    Stitchfix
  • Android Good Reads

    Кастомизация device frame у эмулятора В Android Studio можно настраивать кастомные рамки для эмуляторов. Таким образом, все скриншоты, которые вы будете делать, сразу будут включать нужное оформление девайсов.
  • Android Good Reads

    Шаги по поддержке Rust в Android NDK В ответ на Feature Request о поддержке Rust в NDK, инженеры Google выкатили роадмап по тому, что конкретно требуется для этого сделать. Конкретных планов по его реализации пока нет, но выглядит интересно.
  • Android Good Reads

    Brush API и Compose Animations Продолжение поста про новые возможности работы с окрашиванием текста, которые дает Brush API.
  • Android Good Reads

    Вводная статья в KSP Разбираемся с тем, как писать собственные инструменты поверх KSP на примере упрощения конвертации enum’ов в строки.
    Adding KSP to your toolbelt

    In this article we will demonstrate how we can use KSP to create tools and reduce boilerplate code.

    Blueground engineering
  • Android Good Reads

    Zipline – библиотека для простой интеграции Kotlin/JS кода в Kotlin/JVM Большой плюс Kotlin/JS – что его можно распространять и подгоужать в приложение в обход стандартного релиза через Google Play. Zipline помогает с бриджингом и исполнением Kotlin/JS кода из ваших нативных приложений. Вот где это может пригодиться: - Различные системы плагинов, которые пользователи устанавливают сами - Обновление бизнес-логики, например, расчета цен - Подгружаемый игровой контент - Реализация системы continuous deployment
    GitHub - cashapp/zipline: Run Kotlin/JS libraries in Kotlin/JVM and Kotlin/Native programs

    Run Kotlin/JS libraries in Kotlin/JVM and Kotlin/Native programs - GitHub - cashapp/zipline: Run Kotlin/JS libraries in Kotlin/JVM and Kotlin/Native programs

    GitHub
  • Android Good Reads

    Релиз Kotlin 1.7.20-Beta На прошлой неделе вышла первая Beta нового релиза Kotlin. В ней можно потрогать большинство фич, которые войдут в релизную версию, проверить, собирается ли ваш проект, и порепортить найденные баги. - Новый оператор ..<, который заменяет until, и сильно увеличивает читаемость кода в связке с .. - K2 уверенно движется к Beta, добавив поддержку многих компиляторных плагинов - Новая мемори модель в Kotlin/Native теперь включена по умолчанию - Детальный What’s new
  • Android Good Reads

    Снепшот-тесты для Android - Такие тесты позволяют хорошо контролировать регрессии на экранах, которые редко изменяются - QuickBird выпустили библиотеку kotlin-snapshot-testing, которая позволяет легко писать такие тесты - Она автоматически записывает целевое состояние экрана и строит визуальный дифф, если оно изменится
  • Android Good Reads

  • Android Good Reads

    Как CompositionLocal может помочь с аналитикой CompositionLocal – это API в Compose, который позволяет получить доступ к каким-то данным из любого Composable без необходимости передачи их вручную через параметры функции. Пример использования – работа с темами. CompositionLocal удобен и для того, чтобы настроить аналитику – ведь ее инициализация находится где-то в точке общей конфигурации приложения, а непосредственное логивание событий – в листьях дерева нод.
  • Android Good Reads

    Запуск third-party инструментов из Android Studio В Android Studio можно настраивать External Tools – по сути, запуск любого стороннего исполняемого файла с аргументами с помощью иконки в тулбаре или хоткея.
  • Реклама

  • Android Good Reads

    Brush API в Compose 1.2 Разбор новых возможностей кастомной окраски текста, появившихся в новой версии Compose.
  • Android Good Reads

    Gradle Convention Plugins в приложении Now in Android Convention Plugins – это удобный способ пошарить кусочки логики билда между разными модулями в проекте. В новом образцовом приложении Now in Android можно посмотреть на то, как они используются. - Общие функции, нужные разным плагинам, вынесены в отдельные файлы - Compose и Kapt подключаются только к тем модулям, где они действительно нужны - В статье есть прямые ссылки на все интересные моменты в реализации
  • Android Good Reads

    Хватит использовать ResourceProvider во ViewModel

    Каждый по разному обрабатывает показ того или иного текста. В большинстве своём, картина простая: создаётся ResourcesProvider/ResourceManager/etc с applicationContext внутри и ижектится в Presentation-слой, будь то Presenter или ViewModel. Проблема Смена конфигурацииОсновная проблема с этим подходом — не 100 процентов кейсов смены конфигурации будут работать хорошо. Например, если вы устанавливаете текст в конструкторе ViewModel, при смене языка, пользователь увидит старый язык, т.к. ViewModel при правильной…

    Telegraph