Forwarded from Android Live 🤖
Flow под капотом
#flow
Отличная статья, которая показывает то, как устроен
Автор утверждает, что сама концепция
Для понимания всего, автор делает несколько простой лямбда-функции, которую, постепенно усложняя, превращает в подобие того, что мы видим во
#flow
Отличная статья, которая показывает то, как устроен
Flow под капотом. Автор утверждает, что сама концепция
Flow — проще, чем многие разработчики думают: под капотом описано много простых механизмов, которые после объединения и выдают то, что мы привыкли видеть при использовании Flow.Для понимания всего, автор делает несколько простой лямбда-функции, которую, постепенно усложняя, превращает в подобие того, что мы видим во
Flow.Forwarded from Mobile AppSec World (Yury Shabalin)
Как работают обновления в Android
Очень подробная и крутая статья про то, как работают обновления внутри Android.
Много сказано про механизм TREBLE (способ разделения Android на две независимые части, призванные решить проблемы фрагментации Android и доставки патчей на устройства различных производителей), про тестирование обновлений, в принципе про процесс , про производителей и много-много других очень интересных вещей.
Тем, кто интересуется, как устроена система внутри и что происходит «за сценой» обязательно к прочтению. Да и всем остальным, тоже, думаю будет полезно почитать. Кода в статье нет, это чисто описание различных процессов и технологий (да и автор уверяет, что многие вещи под NDA, так что публиковать это нельзя).
Приятного чтения!
#Android #Trebble #updates #article
Очень подробная и крутая статья про то, как работают обновления внутри Android.
Много сказано про механизм TREBLE (способ разделения Android на две независимые части, призванные решить проблемы фрагментации Android и доставки патчей на устройства различных производителей), про тестирование обновлений, в принципе про процесс , про производителей и много-много других очень интересных вещей.
Тем, кто интересуется, как устроена система внутри и что происходит «за сценой» обязательно к прочтению. Да и всем остальным, тоже, думаю будет полезно почитать. Кода в статье нет, это чисто описание различных процессов и технологий (да и автор уверяет, что многие вещи под NDA, так что публиковать это нельзя).
Приятного чтения!
#Android #Trebble #updates #article
Medium
How Android updates work: A peek behind the curtains from an insider
Updates on Android were always a topic of discussion in the tech communities. Even though they are a crazily complicated topic and very few…
Несколько интересных вещей из кодовой базы Android-приложения для Телеграма.
https://proglib.io/w/5e2c0215
https://proglib.io/w/5e2c0215
Forwarded from Мобильная разработка
Решения для реализации MVI-архитектуры на Android — что выбрать?
За годы существования архитектуры MVI появилось множество библиотек, которые позволяют внедрить её в Android-проект. Наиболее популярные из них собраны в одной подборке — со описанием преимуществ и недостатков:
https://habr.com/ru/company/simbirsoft/blog/661185/
#android #архитектура
За годы существования архитектуры MVI появилось множество библиотек, которые позволяют внедрить её в Android-проект. Наиболее популярные из них собраны в одной подборке — со описанием преимуществ и недостатков:
https://habr.com/ru/company/simbirsoft/blog/661185/
#android #архитектура
Forwarded from Мобильная разработка
Forwarded from Android Broadcast
#compose
Migrating Architecture Blueprints to Jetpack Compose (7 мин)
У Google есть репо с примерами разных архитектур на Android Architecture Blueprints. Решили они в него впихнуть Compose вместо View, Flow вместо LiveData. Статья про то как происходила эта миграция. Все ветка с миграцией здесь (коммиты по каждому шагу)
Migrating Architecture Blueprints to Jetpack Compose (7 мин)
У Google есть репо с примерами разных архитектур на Android Architecture Blueprints. Решили они в него впихнуть Compose вместо View, Flow вместо LiveData. Статья про то как происходила эта миграция. Все ветка с миграцией здесь (коммиты по каждому шагу)
Forwarded from Android Broadcast
#coroutines
Как изучить Kotlin Coroutines
Привет! Все ждут моего курс по Kotlin Coroutines, я тоже жду когда смогу его закончить. Решил пока собраться материалы, которые помогают мне в подготовке курса
Как изучить Kotlin Coroutines
Привет! Все ждут моего курс по Kotlin Coroutines, я тоже жду когда смогу его закончить. Решил пока собраться материалы, которые помогают мне в подготовке курса
Telegraph
Как изучить Kotlin Coroutines
Привет! Все ждут моего курс по Kotlin Coroutines, а тоже жду когда смогу его закончить. Решил пока собраться материалы, которые помогают мне в подготовке курса. Официальная документация (сюда) Конечно же отправная точка для изучения Coroutine - это официальная…
Forwarded from Android Guards
Рубрика "Лайфхаки": Реальный девайс чаще всего оказывается лучше и удобнее эмулятора. За одним исключением - он лежит где-то там и его надо брать в руки чтобы что-то рассмотреть, да и следить за фидбэком приложения так не всегда удобно. Для решения этой проблемы я обычно использую scrcpy. Эта утилита будет отображать все происходящее на экране смартфона прямо у вас на мониторе. Выглядит как эмулятор, только без всех его минусов. Обратная связь етественно есть, можно тыкать на экран смартфона, можно в окно на компьютере. Работает быстро и бесплатно.
👍1🔥1
Полезные материалы для подготовки к собеседованию по проектированию мобильных систем:
— A Simple Framework For Mobile System Design Interviews
— Mind Map by e_matsyuk
— A Simple Framework For Mobile System Design Interviews
— Mind Map by e_matsyuk
GitHub
GitHub - weeeBox/mobile-system-design: A simple framework for mobile system design interviews
A simple framework for mobile system design interviews - weeeBox/mobile-system-design
Forwarded from Мобильная разработка
This media is not supported in your browser
VIEW IN TELEGRAM
Выпадающее анимированное меню на Jetpack Compose
Разработчикам доступно для использования несколько различных анимаций для появления и скрытия меню, а также перемещения по элементам меню.
Как использовать: https://github.com/AndroidPoet/Dropdown
#android #библиотеки
Разработчикам доступно для использования несколько различных анимаций для появления и скрытия меню, а также перемещения по элементам меню.
Как использовать: https://github.com/AndroidPoet/Dropdown
#android #библиотеки
Forwarded from Kotlin Forum (Ruslan Ibragimov)
The JetBrains Blog
Kotlin 1.7.0-Beta Released | The Kotlin Blog
The first preview of the 1.7.0 release is out. Introducing Kotlin 1.7.0-Beta! This preview includes: - Changes to builder inference. - The return of the min() and max() collection functions. - Stabilizing of definitely non-nullable types. - Updates for the…
🔥2
Forwarded from Mobile AppSec World (Yury Shabalin)
Способы определения и способы обхода обнаружения отладки приложения.
Хорошая статья на корейском языке, которая описывает способы обнаружить, что приложение пытаются отладить или устройство подключено к компьютеру и активирован режим отладки по USB.
Вообще, наверное, самая полная статья по этому вопросу. Если вы, как и я не знаете корейский, то вот ссылка на переведенный вариант (спасибо гугл-транслейт)
Будет полезно как для разработки, чтобы включить эти проверки к себе в приложение, так и для тех, кто эти проверки собирается обойти 😄 не проходите мимо, забирайте и используйте, метод обнаружения достаточно интересный, особенно по сравнению с классическим
#android #debug #frida
Хорошая статья на корейском языке, которая описывает способы обнаружить, что приложение пытаются отладить или устройство подключено к компьютеру и активирован режим отладки по USB.
Вообще, наверное, самая полная статья по этому вопросу. Если вы, как и я не знаете корейский, то вот ссылка на переведенный вариант (спасибо гугл-транслейт)
Будет полезно как для разработки, чтобы включить эти проверки к себе в приложение, так и для тех, кто эти проверки собирается обойти 😄 не проходите мимо, забирайте и используйте, метод обнаружения достаточно интересный, особенно по сравнению с классическим
android.os.Debug.isDebuggerConnected(),на который проверяют все популярные фреймворки по обнаружению отладчика.#android #debug #frida
Core-Research-Team
Universal Android Debugging Detection and Bypass
라온화이트햇 핵심연구팀 김현수
👍1
Forwarded from Mobile AppSec World (Yury Shabalin)
Быстрый способ проверить наличие обфускации, тип шифрования apk и различных проверок
Очень полезный инструмент для быстрого анализа приложения на наличие обфускации или специального пакера, который зашифровывает dex файлы.
Помимо этого может крайне интересен при анализе приложений, так как умеет определять различные методы по защите приложения, такие как проверка на эмулятор, проверка на подключенный дебаггер. списком выводит те проверки, что ему удалось найти:
Конечно, инструмент не покрывает всех проверок, но в качестве отправной точки может неплохо помочь.
Удачного использования!
#android #obfuscation #apk #emulation
Очень полезный инструмент для быстрого анализа приложения на наличие обфускации или специального пакера, который зашифровывает 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
GitHub
GitHub - rednaga/APKiD: Android Application Identifier for Packers, Protectors, Obfuscators and Oddities - PEiD for Android
Android Application Identifier for Packers, Protectors, Obfuscators and Oddities - PEiD for Android - rednaga/APKiD
👍2
Forwarded from Android Broadcast
#testing #coroutines
Google обновила руководство по тестированию Coroutine с учетом изменений в библиотеке Kotlinx Coroutines 1.6:
👉 как вызывать suspend функции в тестах
👉 новые TestDispatcher
👉 подмена Dispatcher-ов
👉 тестовые CoroutineScope
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
#androidstudio
https://android-developers.googleblog.com/2022/05/android-studio-chipmunk.html
Android Developers Blog
Android Studio Chipmunk
Posted by Paris Hsu, Product & Design, Android; Takeshi Hagikura, Developer Relations Engineer, Android Today, we are thrill...
Forwarded from Mobile Compose
#Article #Blog
Productivity hack to save tens of engineering hours when working with Jetpack Compose
Любопытная статья с кликбейтным заголовком от Vinay Gaba о том, как микрооптимизация автодополнения кода вашего проекта на Compose поможет сэкономить десятки (по мнению автора) часов работы в год.
Productivity hack to save tens of engineering hours when working with Jetpack Compose
Любопытная статья с кликбейтным заголовком от Vinay Gaba о том, как микрооптимизация автодополнения кода вашего проекта на Compose поможет сэкономить десятки (по мнению автора) часов работы в год.
JetpackCompose.app
Here's a productivity hack to save tens of engineering hours* when working with Jetpack Compose!
⏳ Learn about a simple trick that will save you many engineering hours when working with Jetpack Compose!
Forwarded from addmeto (Grigory Bakunov 🧪)
Google прямо сейчас проводит кейноут Google I/O 2022. Да, я тоже удивился, узнал об этом случайно, а там вероятно покажут новые Pixel Buds и Pixel Watch, лайв трансляция по ссылке https://www.youtube.com/watch?v=nP-nMZpLM1A
YouTube
Google Keynote (Google I/O ‘22)
Tune in to find out about how we're furthering our mission to organize the world’s information and make it universally accessible and useful.
To watch this keynote with American Sign Language (ASL) interpretation, please click here: https://youtu.be/PeUXBvRExic…
To watch this keynote with American Sign Language (ASL) interpretation, please click here: https://youtu.be/PeUXBvRExic…
Forwarded from Android Live 🤖
Koin 3.2 - New DSL
#koin
Тут совсем недавно вышло крутое обновление библиотеки Koin, которое позволяет гораздо проще настраивать сам Koin — Constructor DSL.
Раньше типичный модуль в Koin выглядел следующим образом:
Как видно, в
В новой же версии мы получаем более удобную структуру:
То есть теперь все вызовы get() останутся в прошлом, и мы получим гораздо более красивый и читаемый код.
Больше примеров кода и инфа о других изменениях по ссылке.
#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
Счетчик рекомпозиций - фича, о которой давно просило
https://developer.android.com/studio/preview/features#li-compose-counter
Android сообщество, уже совсем близко.https://developer.android.com/studio/preview/features#li-compose-counter
Android Developers
Release notes for Android Studio preview | Android Developers
Discover new features and changes in Android Studio preview.
👍1🔥1
Forwarded from Mobile Native ️️
Google Play SDK Index
Google представили прикольную штуку Google Play SDK Index – некий новый общедоступный портал, на котором собраны более 100 наиболее широко используемых коммерческих SDK с подробной инфой о каждом из них.
Посмотреть доступные sdk можно тут: Google Play SDK Index
Google представили прикольную штуку Google Play SDK Index – некий новый общедоступный портал, на котором собраны более 100 наиболее широко используемых коммерческих SDK с подробной инфой о каждом из них.
Посмотреть доступные sdk можно тут: Google Play SDK Index
Forwarded from Мобильная разработка
Приложение Now in Android от Google, совмещающее в себе несколько полезных практик разработки
Now in Android — серия материалов от команды Android, в которых рассказывают о новостях, интересных статьях и крутых инструментах для Android-разработчиков.
Google опубликовала исходный код приложения Now in Android. В репозитории на GitHub вы можете познакомиться с примером реализации дизайна на Material3, а также с передовыми практиками разработки.
Репозиторий: https://github.com/android/nowinandroid
#android
Now in Android — серия материалов от команды Android, в которых рассказывают о новостях, интересных статьях и крутых инструментах для Android-разработчиков.
Google опубликовала исходный код приложения Now in Android. В репозитории на GitHub вы можете познакомиться с примером реализации дизайна на Material3, а также с передовыми практиками разработки.
Репозиторий: https://github.com/android/nowinandroid
#android
👍2