This media is not supported in your browser
VIEW IN TELEGRAM
Руководство(EN,6м) от команды CameraX по созданию эффекта как на видео, когда весь ваш UI на Compose. Используется определение лиц в кадре и наложение масок
🔗 Ссылка без VPN
#android #jetpack #camerax #камера #compose
🔗 Ссылка без VPN
#android #jetpack #camerax #камера #compose
👍22🔥7
Очень подробный гайд по тому, как оптимизировать производительность приложения через использование стабильных типов для меньшего числа рекомпозиций.
Разбираются:
👉 Что такое Stable тип
👉 Как происходит рекомпозиция
👉 Restartable и Skippable Composable функции
👉 Compose Compiler Metrics
👉 Аннотации Immutable и Stable
👉 Аннотация NonRestartableComposable
👉 Как стабилизировать Composable функции
👉 Strong Skipping Mode
#compose #производительность
Please open Telegram to view this post
VIEW IN TELEGRAM
👍37❤1
🎉 Новый тестовый формат на канале
Хочу попробовать сделать разбор реальных заданий из компаний. Сейчас вижу несколько форматов
1️⃣ Решение тестового задания в компанию
Если кто-то из вас готов мне слить актуальное тестовое задание (кодинг/теорию/архитектуру), то я разберу его и выложу видео. Гарантирую анонимность при слитии задания. Готов обсудить выкуп задания или какой-то другой обмен. Пишите мне в личку @kirill_broadcast
2️⃣ Разбор записи собеседования
Сбрасываете мне запись собеседования и я её разберу, а запись выложу. Будет формат реакта или из интервью достану вопросы и запищу на них ответы
UPD: Получил несколько записей этапов и заданий. Буду брать в работу; Выложу только на Boosty/Tribute
#AndroidBroadcast
Хочу попробовать сделать разбор реальных заданий из компаний. Сейчас вижу несколько форматов
Если кто-то из вас готов мне слить актуальное тестовое задание (кодинг/теорию/архитектуру), то я разберу его и выложу видео. Гарантирую анонимность при слитии задания. Готов обсудить выкуп задания или какой-то другой обмен. Пишите мне в личку @kirill_broadcast
Сбрасываете мне запись собеседования и я её разберу, а запись выложу. Будет формат реакта или из интервью достану вопросы и запищу на них ответы
Формат образовательный, а не для того чтобы хакнуть собеседования. Даже зная ответы на все вопросы, изменить сценарий интервью опытному собеседующему будет несложно
UPD: Получил несколько записей этапов и заданий. Буду брать в работу; Выложу только на Boosty/Tribute
#AndroidBroadcast
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥45🤯15👍5🎉1
Android имеет ограниченное количество оперативной памяти для приложений и не использует SWAP. Что множество приложений могли работать система использует механизмы по управлению приложениями для очистки памяти - Low Memory Killer (LMKd) и Kernel SWAP (Kswapd). В статье разбирают эти утилиты и принципы работы с памятью
🔗 Ссылка без VPN
Please open Telegram to view this post
VIEW IN TELEGRAM
2🔥32👍11❤3
Google снова пытается убедить разработчиков поддерживать UI под большие экраны. Сделал видео где сделал весь обзор попыток Google повысить популярность Android планшетов и почему снова ничего не выйдет.
#AndroidBroadcast #android16
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥26🤯15👍8❤2🎉1
На сайте Android Developers появилась документация с рекомендациями по разработке приложений и циферблатов для детей на WearOS
#android #wearos
#android #wearos
🎉13👍7
Какие типы Android устройств вы поддерживаете в приложениях? (команда проводит тестирование, используете фичи и др.)
Anonymous Poll
92%
Смартфоны
24%
Планшеты
7%
Складные устройства
1%
Android на ChromeOS
2%
Google WearOS
7%
AndroidTV
3%
Android Auto
1%
Не пишу код
6%
Не участвую в опросе
👍12
This media is not supported in your browser
VIEW IN TELEGRAM
Goose - open-source ИИ-ассистент , который заберет рутину у программистов и сократит время на выполнение задач
Ключевые особенности:
👉 Работает локально на вашем компьютере без интернета
👉 Расширяемый: можно подключить сторонние сервисы через API
👉 Может работать с разными провайдерами AI: OpenAI, Gemini, Groq и другие
👉 Есть интеграция с IDE от JetBrains
@mobi_dev
Ключевые особенности:
👉 Работает локально на вашем компьютере без интернета
👉 Расширяемый: можно подключить сторонние сервисы через API
👉 Может работать с разными провайдерами AI: OpenAI, Gemini, Groq и другие
👉 Есть интеграция с IDE от JetBrains
@mobi_dev
🤯31👍12
Библиотека мигрирует на Kotlin 2.0+ и весь проект должен будет тоже использовать её. Хотите KMP - точно надо будет мигрировать на Kotlin 2.0
Это последний альфа релиз и дальше будет Beta и уже совсем скоро релиз.
#android #kmp #jetpack #jetpackupdate #sqlite
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥28❤4👍2
На какой версии Kotlin ваш Android проект?
Anonymous Poll
24%
Kotlin 2.1.X
29%
Kotlin 2.0.X
28%
Kotlin 1.9.X
5%
Kotlin 1.X
3%
Всё на Java 😁
2%
Пишу на Flutter
1%
Пишу на ReactNative
0%
Другой язык/технология
8%
Не участвую в опросе
👍5🤯1
Media is too big
VIEW IN TELEGRAM
Мне понадобилось сделать рабочее место дома, а места для этого не так много. Решением послужил компактный стол - Ergostol One 2.0. Попользовался им практически месяц и делюсь впечатлениями.
Промокод со скидкой на 10% на всю продукцию Ergostol в описание к видео
#AndroidBroadcast #ergostol
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25🔥7🤯7
У Qualcomm есть собственная технология апскейла для игр - Snapdragon Game Super Resolution 2. Полезно разработчикам игр с 3D. Короткое знакомство в статье (EN,4м)
Ссылка без VPN
#qualcomm #gpu
Ссылка без VPN
#qualcomm #gpu
👍20
Как команда Контура объединила CI/CD для мобильных платформ (5м)
Команда мобильной разработки Контура столкнулась с проблемой разного CI/CD для Android и iOS. Разные пайплайны, gitflow, подходы к секретам и использование сабмодулей создавали сложности в сопровождении и развитии инфраструктуры.
Как было:
👉 Разные процессы CI для Android и iOS
👉 Submodules, не подтягивающие обновления
👉 Дублирование кода
👉 Сложности с мультиплатформенным подходом
Как стало:
👉 Перевели CI на единый шаблон
👉 Отказались от сабмодулей
👉 Унифицировали работу с секретами
👉 Перешли на модульную структуру fastlane
Теперь CI/CD работает как сервис: разработчики могут быстро подключать обновления и собирать пайплайны под новые платформы. Даже после ухода ключевых инженеров система продолжает стабильно работать.
UPD1: Этот процесс был выполнен давно и в Контур уже отказались от Fastlane.
#fastlane #android #ios #ci #автоматизация
Команда мобильной разработки Контура столкнулась с проблемой разного CI/CD для Android и iOS. Разные пайплайны, gitflow, подходы к секретам и использование сабмодулей создавали сложности в сопровождении и развитии инфраструктуры.
Как было:
👉 Разные процессы CI для Android и iOS
👉 Submodules, не подтягивающие обновления
👉 Дублирование кода
👉 Сложности с мультиплатформенным подходом
Как стало:
👉 Перевели CI на единый шаблон
👉 Отказались от сабмодулей
👉 Унифицировали работу с секретами
👉 Перешли на модульную структуру fastlane
Теперь CI/CD работает как сервис: разработчики могут быстро подключать обновления и собирать пайплайны под новые платформы. Даже после ухода ключевых инженеров система продолжает стабильно работать.
UPD1: Этот процесс был выполнен давно и в Контур уже отказались от Fastlane.
#fastlane #android #ios #ci #автоматизация
👍19❤2
Все мы уже привыкли выкладывать сборки в Google Play через AAB, которые передаст на устройство только необходимое для устройства нативные библиотеки. Некоторым приходится раздавать сборку в APK формате. Банальный кейс - отдавать сборку на проверку QA.
Универсальное APK - содержит ресурсы и библиотеки под все возможные устройства, даже те которые не нужны на устройстве пользователя. Обычно нативные библиотеки делают наибольший вклад в конечный размер приложения на устройстве пользователя. Отказ от ненужных позволит снизить размер и скорость доставки до устройства пользователя.
Android Gradle плагин позволяет указать какие ABI нужно добавлять в сборку. Сложность в том, что для финальной сборки обычно надо добавить ABI
Пример задания через параметр
Если вы запускаете приложения из Android Studio на устройстве/эмуляторе, то IDE понимает какую ABI из поддерживаемых стоит включить в APK, чтобы приложение смогло работать. Все остальные исключается. Сборка компактнее - меньше время на передачу и установку тестового билда.
#android #gradle #ndk
Универсальное APK - содержит ресурсы и библиотеки под все возможные устройства, даже те которые не нужны на устройстве пользователя. Обычно нативные библиотеки делают наибольший вклад в конечный размер приложения на устройстве пользователя. Отказ от ненужных позволит снизить размер и скорость доставки до устройства пользователя.
Android Gradle плагин позволяет указать какие ABI нужно добавлять в сборку. Сложность в том, что для финальной сборки обычно надо добавить ABI
arm64-v8a и armeabi-v7a, а вот для Intel эмуляторов нужны x86 и x86-64. Чтобы делать это эффективно, я делал механизм передачи значений ABI через переменные при сборке. Это позволяет задавать локально и на CI разные значения, а локальные задавать через файл local.properties или переменную окружения// Код в Gradle KTS скрипте
fun resolveAbiFilters(): List<String> {
val abisString =
project.findProperty("abiFilter") as String? // Параметр командной строки
?: readFromLocalProperties("abi.filter") // Значение из local.properties
?: System.getenv("ABI_FILTER") // Переменная окружения
return abisString?.split(",") ?: emptyList()
}
fun readFromLocalProperties(key: String): String? {
val localPropertiesFile = rootProject.file("local.properties")
if (!localPropertiesFile.exists()) return null
val localProperties = Properties().apply {
localPropertiesFile.inputStream().use(::load)
}
return localProperties.getProperty(key)
}
// В Android application модуле указываем
android {
defaultConfig {
ndk {
abiFilters = resolveAbiFilters()
}
}
}
Пример задания через параметр
./gradlew assembleRelease -PabiFilter=arm64-v8a,armeabi-v7a
Если вы запускаете приложения из Android Studio на устройстве/эмуляторе, то IDE понимает какую ABI из поддерживаемых стоит включить в APK, чтобы приложение смогло работать. Все остальные исключается. Сборка компактнее - меньше время на передачу и установку тестового билда.
#android #gradle #ndk
👍48🔥10❤2
Знаете ли вы что такое Docker ?
Anonymous Poll
50%
Знаю
39%
Имею представление
9%
Нет
0%
Не занимаюсь разработкой
2%
Не участвую в опросе
👍10🎉1
Получали недавно такое письмо от Google Play? Так вот вам пора переходить на Photo Picker или направить обоснование доступа к картинкам и видео напрямую. Подробности решения в статье (EN,5м)
🔗 Ссылка без VPN
#android #googleplay #permission
🔗 Ссылка без VPN
#android #googleplay #permission
👍37🤯13🔥4👏1🎉1
Google объвила об отказе разработки Relay - инструмента для генерации Compose кода на основе макетов в Figma. Срок закрытия поддержки - 30 апреля 2025.
Причина закрытия проекта - появление Figma Code Connect с поддержкой Compose
#compose #figma
Причина закрытия проекта - появление Figma Code Connect с поддержкой Compose
#compose #figma
🤯34👍16
Media is too big
VIEW IN TELEGRAM
Сам не знал что это за зверь такой и буду изучать
UPD. Понял почему не знал - у меня нет денег на такую лицензию 😂
#figma
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27
Существенный минус Code Connect - фича доступна только на планах Organization и Enterprise, которые стоят 45$ и 75$ в месяц за Full Seat или 25$ и 35$ в месяц за место с Dev Mode 🤯
Обязательно надо купить не меньше чем 3 Full Seat, оплата сразу за год и выходит минимум 1620$ в год 🤯 за Organization план
По итогу Code Connect будет доступен только большим компаниям, которые готовы столько потратить на Figma. А я думал попробовать её при разработке своего личного проекта - FrameIO 😔 Простым смертным, да и большинству разработчиков в компаниях придется всё дальше писать ручками.
Я думаю, что Google всетаки делает ставку именно на AI генерацию на основе макетов. Это уже показывали на Google IO при помощи Gemini
#figma
Обязательно надо купить не меньше чем 3 Full Seat, оплата сразу за год и выходит минимум 1620$ в год 🤯 за Organization план
По итогу Code Connect будет доступен только большим компаниям, которые готовы столько потратить на Figma. А я думал попробовать её при разработке своего личного проекта - FrameIO 😔 Простым смертным, да и большинству разработчиков в компаниях придется всё дальше писать ручками.
Я думаю, что Google всетаки делает ставку именно на AI генерацию на основе макетов. Это уже показывали на Google IO при помощи Gemini
#figma
👍10🤯5❤4