Компонентный подход. Боремся со сложностью в Android-приложениях
В статье разбирается усложнение архитектуры через Clean Architecture из-за того что мы для каждого большо экрана делаем одну ViewModel. Автор статьи предлагает разделять экраны на несколько компонентов, создавать для них отдельны ViewModel и одну общую на весь экран.
С учетом какие размеры устройств, как много элементов располагается на экране, да и супераппы, то идея вполне здравая!
#architecture
В статье разбирается усложнение архитектуры через Clean Architecture из-за того что мы для каждого большо экрана делаем одну ViewModel. Автор статьи предлагает разделять экраны на несколько компонентов, создавать для них отдельны ViewModel и одну общую на весь экран.
С учетом какие размеры устройств, как много элементов располагается на экране, да и супераппы, то идея вполне здравая!
#architecture
👍42👎13🤔13🔥3
Всем привет. В конце года хочу вам напомнить/рассказать что Android Broadcast, это уже далеко не только про Android. У нас есть множество интересных проектов:
👉 @android_broadcast_talks - форум Android разработчиков
👉 @kotlin_broadcast - все про Kotlin
👉 @ios_broadcast - iOS разработка
👉 @rozov_blog - личный блог автора, рассказываю свои мысли, похудение (скинул 20 кг) и всякое из моей жизни в неформальной обстановке
📺 YouTube Android Broadcast - разборы технологий, собеседований, интервью, площадка для внешних спикеров, стримы с ответами на ваши вопросы и пр.
❗ Вы должны понимать, что Broadcast - это каналы, которые никогда не соберут десятки тысяч просмотров. Поэтому я буду рад вашим пожертвованиям и платным подпискам на Boosty, что в будущем снова вернутся на полный день в создании контента! Это моя самая заветная мечта в 2023-2024
#AndroidBroadcast
👉 @android_broadcast_talks - форум Android разработчиков
👉 @kotlin_broadcast - все про Kotlin
👉 @ios_broadcast - iOS разработка
👉 @rozov_blog - личный блог автора, рассказываю свои мысли, похудение (скинул 20 кг) и всякое из моей жизни в неформальной обстановке
📺 YouTube Android Broadcast - разборы технологий, собеседований, интервью, площадка для внешних спикеров, стримы с ответами на ваши вопросы и пр.
❗ Вы должны понимать, что Broadcast - это каналы, которые никогда не соберут десятки тысяч просмотров. Поэтому я буду рад вашим пожертвованиям и платным подпискам на Boosty, что в будущем снова вернутся на полный день в создании контента! Это моя самая заветная мечта в 2023-2024
#AndroidBroadcast
❤22👎18👍11🔥3😁2
Forwarded from Алексей Гладков
Новый релиз Odyssey
https://github.com/AlexGladkov/Odyssey/releases/tag/release-1.3.0
Что нового:
👉 Экспериментальная поддержка Hilt (огромное спасибо https://github.com/puritanin)
👉 Новый Readme c документацией и примерами
👉 Новые флаги для навигации (удаление таких же экранов и удаление прошлого экрана)
👉 Поддержка тени на статус бар при модальном окне
👉 Два режима работы EdgeToEdge и FullScreen
👉 Исправлен краш при нажатии кнопки назад в некоторых случаях
👉 Поддержан компоузный флоу desktop application
👉 Возможность настраивать цвет status bar и navigation bar в Android в режиме FullScreen
👉 Другие мелкие исправления
Всех с наступающим!
https://github.com/AlexGladkov/Odyssey/releases/tag/release-1.3.0
Что нового:
👉 Экспериментальная поддержка Hilt (огромное спасибо https://github.com/puritanin)
👉 Новый Readme c документацией и примерами
👉 Новые флаги для навигации (удаление таких же экранов и удаление прошлого экрана)
👉 Поддержка тени на статус бар при модальном окне
👉 Два режима работы EdgeToEdge и FullScreen
👉 Исправлен краш при нажатии кнопки назад в некоторых случаях
👉 Поддержан компоузный флоу desktop application
👉 Возможность настраивать цвет status bar и navigation bar в Android в режиме FullScreen
👉 Другие мелкие исправления
Всех с наступающим!
GitHub
Release 1.3.0 · AlexGladkov/Odyssey
What's Changed
Hilt support (Experimental)
New flags
New start config
Bug fixes
Full Changelog: release-1.2.0...release-1.3.0
Hilt support (Experimental)
New flags
New start config
Bug fixes
Full Changelog: release-1.2.0...release-1.3.0
👍20👎16🥱2💔2
В статье автор делится как с помощью включения Gradle Configuration Cache в Android проекте смогли уменшить время сборок в 2 раза, значительно сократить суммарное время сборок в неделю и сэкономить кучу денег
#gradle
#gradle
👍32👎13😢1
This media is not supported in your browser
VIEW IN TELEGRAM
Разработчики Додо Android рассказывают как сделали эффект изморози и рисования на нем. Под капотом Custom View, отрисовка на Canvas и обработка жестов. Никакой магии! Подробности тут
🤩89👍25👎13
Канал уходит в отпуск на новогодние праздники до 9 января (хотя в Беларуси уже с 3 января стартует рабочая неделя), поэтому решил вам оставить как задание на каникулы посмотреть самые интересные видео этого года в Android Broadcast:
📺 Что попадает в AndroidManifest и как этим управлять
📺 Как устроен Android. Процессы. IPC. Binder
📺 Зачем делают супераппы? Интервью с VK
📺 Lensa - как делают самый популярный фоторедактор на Android
📺 Как правильно реализовать авторизацию. OAuth
📺 Java Dynamic Proxy - эта фича прокачает архитектуру вашего приложения (возможно)
📺 Организация ресурсов стилей в Android. Именование. Наследование
📺 Боиштян проводит хардкорное собеседование Розову
📺 Собеседование по полочкам. Как устраиваются на лида в продуктовую команду. Блинов - Быков
В комментариях делитесь видео, которые вы запомнили в этом году, что будет полезно Android разработчикам (с любого канала)
P.S. Подписывайтесь на @rozov_blog, там я буду шарить что делаю в этом время и обсуждать всякое.
#подборкавидео
📺 Что попадает в AndroidManifest и как этим управлять
📺 Как устроен Android. Процессы. IPC. Binder
📺 Зачем делают супераппы? Интервью с VK
📺 Lensa - как делают самый популярный фоторедактор на Android
📺 Как правильно реализовать авторизацию. OAuth
📺 Java Dynamic Proxy - эта фича прокачает архитектуру вашего приложения (возможно)
📺 Организация ресурсов стилей в Android. Именование. Наследование
📺 Боиштян проводит хардкорное собеседование Розову
📺 Собеседование по полочкам. Как устраиваются на лида в продуктовую команду. Блинов - Быков
В комментариях делитесь видео, которые вы запомнили в этом году, что будет полезно Android разработчикам (с любого канала)
P.S. Подписывайтесь на @rozov_blog, там я буду шарить что делаю в этом время и обсуждать всякое.
#подборкавидео
❤51🍾21👎16👍8
Media is too big
VIEW IN TELEGRAM
📺 2 недели с Google Pixel 7 Pro (0.5 часа)
Уже какое-то время я походил с Pixel 7 Pro и делюсь своими впечатлениями. Конечно же не обошел стороной и сравнение с Pixel 5a и кому достаточно будет Pixel.]
📺 Версия для платных подписчиков на YouTube
Много фоточек с Pixel 7 Pro можно найти в моем блоге @rozov_blog
#AndroidBroadcast
Уже какое-то время я походил с Pixel 7 Pro и делюсь своими впечатлениями. Конечно же не обошел стороной и сравнение с Pixel 5a и кому достаточно будет Pixel.]
📺 Версия для платных подписчиков на YouTube
Много фоточек с Pixel 7 Pro можно найти в моем блоге @rozov_blog
#AndroidBroadcast
👎54👍35🥱5😁2🥴1
Media is too big
VIEW IN TELEGRAM
📺 Новости 2023.1 (35 мин)
В свежем выпуске новостей рассказываю про RISC-V на Android, как ChatGPT может выступить ментором для разработчиков и как повысились шансы RuStore появиться на iOS.
Если вам нравится что мы делаем - поддержите нас на Boosty
#AndroidBroadcast
В свежем выпуске новостей рассказываю про RISC-V на Android, как ChatGPT может выступить ментором для разработчиков и как повысились шансы RuStore появиться на iOS.
Если вам нравится что мы делаем - поддержите нас на Boosty
#AndroidBroadcast
👎27🔥20👍12🥱2🤔1
Статья с разбором что такое Feature Toggle (флаг для отключения какой-то функциональности в приложении), цели и способы его реализации в Android приложении
👍27👎16🥱6
Получить информацию о Wi-Fi программно на Android на Java
Из статьи вы узнаете, как получить информацию о точке доступа Wi-Fi (также известное как SSID или идентификатор набора услуг) в Android приложении,. API позволяет получить доступ к функциям Wi-Fi устройства Android, включая сканирование доступных сетей Wi-Fi, подключение к сети Wi-Fi и получение SSID подключенной в данный момент сети Wi-Fi.
#network #androidsdk
Из статьи вы узнаете, как получить информацию о точке доступа Wi-Fi (также известное как SSID или идентификатор набора услуг) в Android приложении,. API позволяет получить доступ к функциям Wi-Fi устройства Android, включая сканирование доступных сетей Wi-Fi, подключение к сети Wi-Fi и получение SSID подключенной в данный момент сети Wi-Fi.
#network #androidsdk
👍25👎8❤🔥4🔥2❤1🥱1
Google представила Extension SDK Framework для интеграции функций из новых версии ОС в старые
Android 10+ активно интегрировал разделение системы на модули (Modular System Components). которая позволяет доставлять обновления независимо от обновления ОС, а также портировать новую функциональность на старые версии Android. Начиная с Android 11 устройства включают расширения SDK.
Например, с помощь этого SDK
👉 Перенесли PhotoPicker API из Android 13 на Android 10+
👉 Privacy Sandbox
Теперь чтобы проверять наличие API нужно проверять не версию Android, а версию расширений SDK -
🔗 Документация по расширениям SDK
Android 10+ активно интегрировал разделение системы на модули (Modular System Components). которая позволяет доставлять обновления независимо от обновления ОС, а также портировать новую функциональность на старые версии Android. Начиная с Android 11 устройства включают расширения SDK.
Например, с помощь этого SDK
👉 Перенесли PhotoPicker API из Android 13 на Android 10+
👉 Privacy Sandbox
Теперь чтобы проверять наличие API нужно проверять не версию Android, а версию расширений SDK -
SdkExtensions.getExtensionVersion(VERSION_CODES.R) >= 2
. Проверки в Android Lint будут поддерживать SdkExtentions
. Помимо прочего в Gradle билд системе надо будет указывать уровень в compileSdkExtension
.🔗 Документация по расширениям SDK
👍51🤔21👎8🔥6😭6🤬2
Как стать Android разработчиком в 2023
Возрадуйтесь новички - разбор Roadmap и по чему его учить. Забирайте!
Возрадуйтесь новички - разбор Roadmap и по чему его учить. Забирайте!
🥱42👍21👎11🤣3
Как много тут новичков в Android
Anonymous Poll
20%
Изучаю Android
73%
Уже работаю Android разработчиком
1%
Не занимаюсь разработкой
4%
Просто интересуюсь
3%
Другое
👍23👎7👀3😁2🥱1
Реализация поля ввода OTP кода на Jetpack Compose. За основу взяли BasicTextField, рамку нарисовали с помощью стандартной возможности декорирования текстового поля. Прочитал статью и обалдел как легко с Compose делается такое поле и обрабатывается ввод. С Custom View это было на порядок сложнее.
#compose
#compose
👍75👎8❤1🎉1
Android Gradle Plugin 8.0 переходит на Gradle 8.0 и JDK 17. В статье разработчик сравнивает как отличается скорость сборки проектов с разной версий JDK. Результат - свежи версии JDK собирают не хуже.
#gradle #performance
#gradle #performance
👍32👀11👎9❤🔥1