Dive into the Ultimate Free Library: Your One-Stop Hub for Entertainment!

Android Live 🤖

Description
Самые свежие новости, новинки и тренды Android от практикующего разработчика.


Автор: @al_gorshkov,
Чат: @android_live_chat
Личный блог: @al_gorshkov_blog

По рекламе: @ek_gorshkova
Advertising
We recommend to visit

По рекламе - @Hymmka

Last updated 1 month, 3 weeks ago

Reklama va hamkorlik bo'yicha: @oshigi_jannatim

Hamkor kanal: @xazilbek

Last updated 1 month, 2 weeks ago

Сотрудничество: esaul@mediar.pro
Телега со стилем и шмотом: https://t.me/esaulstyle
Это ютуб крутой бабы: https://youtube.com/c/vika02032000
Дискорд: https://discord.gg/HPzQ85rZck

Last updated 3 days, 12 hours ago

3 weeks, 4 days ago
**Sync speedup в Gradle**

Sync speedup в Gradle
#gradle

Вечная тема для Android-разработчиков — уменьшение времени сборки и ускорение Gradle.
Вот вам ещё одна улучшайка в копилку, сам пока не пробовал, но выглядит любопытно.

Автор обратил внимание на добавляемые репозитории в проект и решил посмотреть на то, куда уходит время при синке. Выяснилось, что много времени уходит на попытки получения зависимостей в тех репозиториях, где их нет, из-за чего sync увеличивается по времени.

Недолгий research показал, что можно добавить параметры exclusiveContent и content для каждого из репозитория, указывая там группы репозиториев.
Ещё интересный фикс — это настройка порядка репозиториев, оказывается он тоже влияет на скорость синка. Может сгодиться как быстрый фикс.

У автора получилось уменьшить время sync с почти 6 минут до 3 минут 17 секунд, что выглядит крайне круто. 🔥

1 month ago
**State in your Kotlin apps**

State in your Kotlin apps
#kotlin #android

Архитектуры с Unidirectional Data Flow сейчас очень популярны в большинстве современных приложений: это отличный подход, который позволяет избежать ошибок при обновлении экрана, да и разрабатывать с этим подходом удобнее, особенно большие приложения.

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

Чтобы избежать некоторых из багов, вот отличная статья, где указываются на некоторые проблемы и способы их решения. Одинаково будет полезно как новичкам, так и опытным разработчикам, ведь от ошибок не застрахованы даже профи.

Кстати, автор статьи подписан на канал, так что свои вопросы по статье можете задать в комментариях. 🤓

1 month, 1 week ago
**Дизайн система Android через Figma API**

Дизайн система Android через Figma API
#design #android #ci

С ростом проекта количество ресурсов, которое появляется в приложении очень сильно растёт, и управлять ими становится всё сложнее. Со временем многие команды приходят к тому, чтобы настроить и использовать свою дизайн-систему.

В проектах, где я работал — мы всегда приходили к какой-то дизайн системе. Иногда не совсем удачно, но чаще это очень сильно экономило время и ресурсы всех команд.
Правда, никогда не получалось сделать обновление ресурсов через CI.

Если вы хотите добавить ещё больше автоматизации в ваш проект — можно взять за основу эту статью, где ребята рассказывают свой путь, чтобы подружить Figma и обновление некоторых элементов дизайн-системы.
Тут и небольшой обзор текущих решений, и то, как всё это дело работает в xml и Compose. 🥸

2 months, 3 weeks ago
**RTL адаптация в Android**

RTL адаптация в Android
#android

Хорошая статья, где описывается опыт поддержки RTL-языков в Android, в том числе и на Compose.

Для тех, кто не в теме. RTL (right-to-left) — это чтение справа-налево, которое встречается в языках ближнего востока, например, арабский. LTR (left-to-right) — привычное нам чтение слева-направо.

В Android довольно неплохо поддерживаются RTL-языки, начиная с API 17, но тем не менее — есть масса кейсов, на которые стоит посмотреть при тестировании.

Был опыт адаптации приложения под RTL-языки? Вдруг вы настолько круты, что адаптировали свой pet-проект, кто знает, расскажите в комментариях. 🇦🇪

3 months ago
**Device streaming**

Device streaming
#androidstudio

О, тут в Android Studio Jellyfish подвезли Device streaming: фича, которая позволяет тестировать своё приложение на различных девайсах, которые находятся в дата центрах Google.

Прикольная фича, стоит обратить внимание, особенно когда выходит свежая версия Android, а на ваши устройства она ещё не прилетела. Да и специфические устройства, типа Fold тоже не каждый хочет себе покупать.

Работает аналогично обычному подключению устройства, и фича бесплатна, пока находится в alpha. Дальше всё за монету и будет учитываться время подключения к устройству.

Все детали можно почитать тут.

3 months, 1 week ago
**Ресурсы в Compose Multiplatform**

Ресурсы в Compose Multiplatform
#compose

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

Неплохая обзорная статья, где описываются основные изменения работы с ресурсами после свежего релиза Compose Multiplatform 1.6.0-beta01.

В целом, стало всё чуть удобнее, но буду рад, если поделитесь практическими примерами оптимизации ресурсов в подобных приложениях.

4 months, 2 weeks ago

2️⃣0️⃣2️⃣4️⃣

Итак, подходит к концу ещё один год.

Уверен, что вы были молодцы и закрыли свои рабочие и личные задачи.

Кто знает, вероятно среди подписчиков есть те, кто поменял место жизни, а может быть — сменил работу, повысив свой уровень дохода.

У меня год пролетел крайне быстро: получилось закрыть не все свои цели, но главные из них успешно закрыты. И, как ни странно, они связаны с семьёй и здоровьем.

К чему я этот тост вообще вам говорю 🤓.
Насколько бы важными вам не казались бы ваши финансовые или профессиональные цели — всегда помните, что ваше здоровье, близкие люди и жизнь в согласии с собой сильно важнее.

Вот и желаю вам в новом году следовать за тем, что действительно важно! 🎄

4 months, 2 weeks ago
**Хак через десериализацию**

Хак через десериализацию
#android

Давно я не появлялся на канале: со мной всё хорошо, но дела под конец года забрали всё свободное время, а серая погода — забрала всё желание писать. Но… надо не забывать вас, поэтому возвращаюсь!

На днях попалось любопытное видео, где описывается уязвимость приложения, связанная с использованием Serializable в крупном приложении AliExpress. В видео по шагам рассказывается о том, как провернуть подобный хак, как найти подобные в своих приложениях, ну и конечно же демонстрируется сама уязвимость.

5 months, 2 weeks ago
5 months, 2 weeks ago

Flow опрос #2
#квиз

Первый опрос был выше, и внимательные подписчики заметили, что мы не блокируем функцию main() от завершения. Для упрощения — так и оставлю и в нашем примере, ведь работу этих заданий я тестирую в Kotlin Playground, где все задания успешно выполняются.

Ну и на этот раз — ответ только один**.

Итак, что будет в консол**и?

```
import kotlinx.coroutines.
import kotlinx.coroutines.flow.

val coroutineScope = CoroutineScope(Dispatchers.Default)

val intFlow = flowOf(1, 2, 3)
val stringFlow = flowOf("a", "b", "c")

fun main() {
coroutineScope.launch {
intFlow
.onEach { delay(100) }
.collect { println(it) }

stringFlow
.collect { println(it) }
}
}
```

We recommend to visit

По рекламе - @Hymmka

Last updated 1 month, 3 weeks ago

Reklama va hamkorlik bo'yicha: @oshigi_jannatim

Hamkor kanal: @xazilbek

Last updated 1 month, 2 weeks ago

Сотрудничество: esaul@mediar.pro
Телега со стилем и шмотом: https://t.me/esaulstyle
Это ютуб крутой бабы: https://youtube.com/c/vika02032000
Дискорд: https://discord.gg/HPzQ85rZck

Last updated 3 days, 12 hours ago