We Love Android – Telegram
We Love Android
629 subscribers
259 photos
26 videos
4 files
630 links
Новости из мира Android-разработки
Download Telegram
Forwarded from Android Live 🤖
​​Flow под капотом
#flow

Отличная статья, которая показывает то, как устроен Flow под капотом.

Автор утверждает, что сама концепция Flow — проще, чем многие разработчики думают: под капотом описано много простых механизмов, которые после объединения и выдают то, что мы привыкли видеть при использовании Flow.

Для понимания всего, автор делает несколько простой лямбда-функции, которую, постепенно усложняя, превращает в подобие того, что мы видим во Flow.
Forwarded from Mobile AppSec World (Yury Shabalin)
Как работают обновления в Android

Очень подробная и крутая статья про то, как работают обновления внутри Android.

Много сказано про механизм TREBLE (способ разделения Android на две независимые части, призванные решить проблемы фрагментации Android и доставки патчей на устройства различных производителей), про тестирование обновлений, в принципе про процесс , про производителей и много-много других очень интересных вещей.

Тем, кто интересуется, как устроена система внутри и что происходит «за сценой» обязательно к прочтению. Да и всем остальным, тоже, думаю будет полезно почитать. Кода в статье нет, это чисто описание различных процессов и технологий (да и автор уверяет, что многие вещи под NDA, так что публиковать это нельзя).

Приятного чтения!

#Android #Trebble #updates #article
Несколько интересных вещей из кодовой базы Android-приложения для Телеграма.

https://proglib.io/w/5e2c0215
Решения для реализации MVI-архитектуры на Android — что выбрать?

За годы существования архитектуры MVI появилось множество библиотек, которые позволяют внедрить её в Android-проект. Наиболее популярные из них собраны в одной подборке — со описанием преимуществ и недостатков:

https://habr.com/ru/company/simbirsoft/blog/661185/

#android #архитектура
Быстрый переход с View на Jetpack Compose

Хотите перейти от построения UI через XML к Compose? Шпаргалка поможет освоить базовые элементы Compose. В ней показаны модификаторы из Compose, сравнимые с атрибутами View.

Прилагаемая к шпаргалке статья поможет быстрее изучить Compose.

#android #compose
Forwarded from Android Broadcast
#compose

Migrating Architecture Blueprints to Jetpack Compose (7 мин)

У Google есть репо с примерами разных архитектур на Android Architecture Blueprints. Решили они в него впихнуть Compose вместо View, Flow вместо LiveData. Статья про то как происходила эта миграция. Все ветка с миграцией здесь (коммиты по каждому шагу)
Forwarded from Android Guards
Рубрика "Лайфхаки": Реальный девайс чаще всего оказывается лучше и удобнее эмулятора. За одним исключением - он лежит где-то там и его надо брать в руки чтобы что-то рассмотреть, да и следить за фидбэком приложения так не всегда удобно. Для решения этой проблемы я обычно использую scrcpy. Эта утилита будет отображать все происходящее на экране смартфона прямо у вас на мониторе. Выглядит как эмулятор, только без всех его минусов. Обратная связь етественно есть, можно тыкать на экран смартфона, можно в окно на компьютере. Работает быстро и бесплатно.
👍1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Выпадающее анимированное меню на Jetpack Compose

Разработчикам доступно для использования несколько различных анимаций для появления и скрытия меню, а также перемещения по элементам меню.

Как использовать: https://github.com/AndroidPoet/Dropdown

#android #библиотеки
Forwarded from Mobile AppSec World (Yury Shabalin)
Способы определения и способы обхода обнаружения отладки приложения.

Хорошая статья на корейском языке, которая описывает способы обнаружить, что приложение пытаются отладить или устройство подключено к компьютеру и активирован режим отладки по USB.

Вообще, наверное, самая полная статья по этому вопросу. Если вы, как и я не знаете корейский, то вот ссылка на переведенный вариант (спасибо гугл-транслейт)

Будет полезно как для разработки, чтобы включить эти проверки к себе в приложение, так и для тех, кто эти проверки собирается обойти 😄 не проходите мимо, забирайте и используйте, метод обнаружения достаточно интересный, особенно по сравнению с классическим android.os.Debug.isDebuggerConnected(),на который проверяют все популярные фреймворки по обнаружению отладчика.

#android #debug #frida
👍1
Forwarded from Mobile AppSec World (Yury Shabalin)
Быстрый способ проверить наличие обфускации, тип шифрования apk и различных проверок

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

Помимо этого может крайне интересен при анализе приложений, так как умеет определять различные методы по защите приложения, такие как проверка на эмулятор, проверка на подключенный дебаггер. списком выводит те проверки, что ему удалось найти:

|-> anti_vm : Build.FINGERPRINT check, Build.MANUFACTURER check, Build.MODEL check, Build.PRODUCT check, Build.TAGS check, SIM operator check, device ID check, network operator name check, ro.kernel.qemu check
|-> compiler : r8
|-> obfuscator : unreadable field names, unreadable method names

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

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

Удачного использования!

#android #obfuscation #apk #emulation
👍2
Forwarded from Android Broadcast
#testing #coroutines

Google обновила руководство по тестированию Coroutine с учетом изменений в библиотеке Kotlinx Coroutines 1.6:
👉 как вызывать suspend функции в тестах
👉 новые TestDispatcher
👉 подмена Dispatcher-ов
👉 тестовые CoroutineScope
👍1
Forwarded from StartAndroid
Новая стабильная версия студии - Chipmunk. Не очень много новых фич, но включены последние апдейты IntelliJ, и проведена работа над качеством и стабильностью.

#androidstudio

https://android-developers.googleblog.com/2022/05/android-studio-chipmunk.html
Forwarded from Mobile Compose
#Article #Blog

Productivity hack to save tens of engineering hours when working with Jetpack Compose

Любопытная статья с кликбейтным заголовком от Vinay Gaba о том, как микрооптимизация автодополнения кода вашего проекта на Compose поможет сэкономить десятки (по мнению автора) часов работы в год.
Forwarded from addmeto (Grigory Bakunov 🧪)
Google прямо сейчас проводит кейноут Google I/O 2022. Да, я тоже удивился, узнал об этом случайно, а там вероятно покажут новые Pixel Buds и Pixel Watch, лайв трансляция по ссылке https://www.youtube.com/watch?v=nP-nMZpLM1A
Forwarded from Android Live 🤖
​​Koin 3.2 - New DSL
#koin

Тут совсем недавно вышло крутое обновление библиотеки Koin, которое позволяет гораздо проще настраивать сам Koin — Constructor DSL.

Раньше типичный модуль в Koin выглядел следующим образом:

class MyClassA()
class MyClassB(val a : MyClassA)

// Let Koin find dependencies for you with get()
module {
single { MyClassA() }
single { MyClassB(get()) }
}


Как видно, в MyClassB нужно добавить get() по количеству параметров, которые в этот класс передаются. Если таких параметров будет много, то и число этих get() будет кратно увеличиваться.

В новой же версии мы получаем более удобную структуру:

class MyClassA(val id : String)

module {
singleOf(::MyClassA)
}

// in calling code
val classA : MyClassA by inject { parametersOf("_id_")}


То есть теперь все вызовы get() останутся в прошлом, и мы получим гораздо более красивый и читаемый код.
Больше примеров кода и инфа о других изменениях по ссылке.
👍2
Счетчик рекомпозиций - фича, о которой давно просило Android сообщество, уже совсем близко.

https://developer.android.com/studio/preview/features#li-compose-counter
👍1🔥1
Forwarded from Mobile Native ️️
Google Play SDK Index

Google представили прикольную штуку Google Play SDK Index – некий новый общедоступный портал, на котором собраны более 100 наиболее широко используемых коммерческих SDK с подробной инфой о каждом из них.

Посмотреть доступные sdk можно тут: Google Play SDK Index
Приложение Now in Android от Google, совмещающее в себе несколько полезных практик разработки

Now in Android — серия материалов от команды Android, в которых рассказывают о новостях, интересных статьях и крутых инструментах для Android-разработчиков.

Google опубликовала исходный код приложения Now in Android. В репозитории на GitHub вы можете познакомиться с примером реализации дизайна на Material3, а также с передовыми практиками разработки.

Репозиторий: https://github.com/android/nowinandroid

#android
👍2