#HMS
Как мы интегрировали Huawei Mobile Services в два этапа
История интеграция HMS сервисов в дополнение к GMS, а именно: Dynamic Ability, In-App Updates, Adjust, карты, пуши и др.. Также рассматривается разделение в одной кодовой базе на приложения под разные магазины
Как мы интегрировали Huawei Mobile Services в два этапа
История интеграция HMS сервисов в дополнение к GMS, а именно: Dynamic Ability, In-App Updates, Adjust, карты, пуши и др.. Также рассматривается разделение в одной кодовой базе на приложения под разные магазины
#Jetpack #DataStore
Securing Android’s DataStore
Замена SharedPreferences - DataStore, уже близка к релиз, но в ней есть существенный минус - отсутствие шифрования, что не соответствует общим трендам безопасности данных.
Автор приводит способ сериализации данных (GSON, Kotlinx Serialization) в котором проводит шифрования отдельно и сохраняет/восстанавливает полученный результат
Securing Android’s DataStore
Замена SharedPreferences - DataStore, уже близка к релиз, но в ней есть существенный минус - отсутствие шифрования, что не соответствует общим трендам безопасности данных.
Автор приводит способ сериализации данных (GSON, Kotlinx Serialization) в котором проводит шифрования отдельно и сохраняет/восстанавливает полученный результат
#Архитектура
Sesame – это набор архитектурных компонентов для Android-разработки. Библиотека хорошо подходит для проектов, в которых используются Korlin Coroutines, Flow и архитектурный шаблон
👉 property – реактивные свойства для моделирования состояния ViewModel
👉 dialog – механизм для отображения диалогов
👉 navigation – навигация на основе очереди сообщений и обработчиков сообщений
👉 activable – простой жизненный цикл для ViewModel (всего два метода)
👉 loading – управление состоянием загрузки (Loading/Data/Error), загрузка с пагинацией
👉 loop – простая реализация MVI
👉 localized string – классы-обертки для работы со строковыми ресурсами
👉 form – валидация форм ввода
Sesame – это набор архитектурных компонентов для Android-разработки. Библиотека хорошо подходит для проектов, в которых используются Korlin Coroutines, Flow и архитектурный шаблон
MVVM или МVI. Каждый компонент это отдельный модуль, которые можно подключить по отдельности:👉 property – реактивные свойства для моделирования состояния ViewModel
👉 dialog – механизм для отображения диалогов
👉 navigation – навигация на основе очереди сообщений и обработчиков сообщений
👉 activable – простой жизненный цикл для ViewModel (всего два метода)
👉 loading – управление состоянием загрузки (Loading/Data/Error), загрузка с пагинацией
👉 loop – простая реализация MVI
👉 localized string – классы-обертки для работы со строковыми ресурсами
👉 form – валидация форм ввода
#AndroidStudio
Вышла Android Studio 4.2
Новая версия основного инструмента Android разработчиков уже готова, Давайте к фичам:
👉 Базируется на IntelliJ Platform 2020.2
👉 Поддержка Navigation Safe Args плагинов. Теперь есть автодополнение
👉 Новые wizard-ы для создания проектов и модулей
👉 Database Inspector может работать без подключенного устройства (offline mode)
👉 R8 Retrace Command Line Tool
👉 AGP Upgrade Assistant, который проведёт ваш через весь процесс обновления AGP
👉 Больше возможностей у Apply Changes
👉 Возможность запуска сборки на нескольких устройствах одновременно
👉 Улучшения в System Trace
Подробности здесь
Android Gradle Plugin (AGP) 4.2
👉 Базируется на Gradle 6.7.1
👉 Новый компилятор ресурсов
👉 Java 8 теперь язык для всех проектов по умолчанию
👉 Поддержка новых форматов подписи APK
👉 Возможность конфигурации подписи APK отдельно для каждого buildVariant
👉 Теперь невозможно переопределить gradle.properties из подпроектов (модулей)
Подробности здесь
Вышла Android Studio 4.2
Новая версия основного инструмента Android разработчиков уже готова, Давайте к фичам:
👉 Базируется на IntelliJ Platform 2020.2
👉 Поддержка Navigation Safe Args плагинов. Теперь есть автодополнение
👉 Новые wizard-ы для создания проектов и модулей
👉 Database Inspector может работать без подключенного устройства (offline mode)
👉 R8 Retrace Command Line Tool
👉 AGP Upgrade Assistant, который проведёт ваш через весь процесс обновления AGP
👉 Больше возможностей у Apply Changes
👉 Возможность запуска сборки на нескольких устройствах одновременно
👉 Улучшения в System Trace
Подробности здесь
Android Gradle Plugin (AGP) 4.2
👉 Базируется на Gradle 6.7.1
👉 Новый компилятор ресурсов
👉 Java 8 теперь язык для всех проектов по умолчанию
👉 Поддержка новых форматов подписи APK
👉 Возможность конфигурации подписи APK отдельно для каждого buildVariant
👉 Теперь невозможно переопределить gradle.properties из подпроектов (модулей)
Подробности здесь
#DI #Dagger #Hilt
Hilt is stable! Easier dependency injection on Android
Для тех кто пропустил что Hilt стал стабильным, то вот вам напоминание с демоснтрацией возможностей.
Hilt - рекомендуемый DI подход для Android и Jetpack библиотек, работающий поверх Dagger.
Hilt is stable! Easier dependency injection on Android
Для тех кто пропустил что Hilt стал стабильным, то вот вам напоминание с демоснтрацией возможностей.
Hilt - рекомендуемый DI подход для Android и Jetpack библиотек, работающий поверх Dagger.
#AndroidBroadcast #Kotlin
🔴 Разбор Kotlin 1.5.0 с экспертами
ЧТ, 6 МАЯ, 18:30 (GMT+3)
Завтра на YouTube канале вас ждёт разбор всех новых фичей языка Kotlin и обновлений библиотек, а затем эксперты ответят на ваши вопросы и обсудят чего ждать в версии 1.6.0
Эксперты:
👩🏼🎓 Светлана Исакова, Lead Kotlin Dev Advocate / JetBrains
👩🏼🎓 Маргарита Недзельская, Kotlin GDE / SonarSource
👨🏼🎓 Кирилл Розов, Android GDE / Android Broadcast
🔴 Разбор Kotlin 1.5.0 с экспертами
ЧТ, 6 МАЯ, 18:30 (GMT+3)
Завтра на YouTube канале вас ждёт разбор всех новых фичей языка Kotlin и обновлений библиотек, а затем эксперты ответят на ваши вопросы и обсудят чего ждать в версии 1.6.0
Эксперты:
👩🏼🎓 Светлана Исакова, Lead Kotlin Dev Advocate / JetBrains
👩🏼🎓 Маргарита Недзельская, Kotlin GDE / SonarSource
👨🏼🎓 Кирилл Розов, Android GDE / Android Broadcast
#Jetpack
Обновление Jetpack от 5 мая 2021
👉 Новая библиотека AppSearch, которая поможет вам создать крутой поиск в вашем приложении
👉 AndroidX Camera теперь стабильная
👉 AndroidX Hilt 1.0.0 - расширение Dagger Hilt для компонентов из библиотек AndroidX
👉 Paging 3.0 теперь стабильна. Библиотека переписана с нуля, полностью на Kotlin и Coroutines
👉 Улучшение API автомиграций в Room 2.4.0-alpha02
👉 Новая библиотека AppAuthenticator, которая проверяет подпись заданных вами приложений в системе
👉 Лучшая поддержка foldable устройств в Slidingpanellayout 1.2.0-alpha02
👉 Библиотеку WindowManager ещё до релиза стали переписывать на Kotlin
👉 Исправление багов в ряде библиотек
Обновление Jetpack от 5 мая 2021
👉 Новая библиотека AppSearch, которая поможет вам создать крутой поиск в вашем приложении
👉 AndroidX Camera теперь стабильная
👉 AndroidX Hilt 1.0.0 - расширение Dagger Hilt для компонентов из библиотек AndroidX
👉 Paging 3.0 теперь стабильна. Библиотека переписана с нуля, полностью на Kotlin и Coroutines
👉 Улучшение API автомиграций в Room 2.4.0-alpha02
👉 Новая библиотека AppAuthenticator, которая проверяет подпись заданных вами приложений в системе
👉 Лучшая поддержка foldable устройств в Slidingpanellayout 1.2.0-alpha02
👉 Библиотеку WindowManager ещё до релиза стали переписывать на Kotlin
👉 Исправление багов в ряде библиотек
#AndroidBroadcast #Kotlin
📺 Что нового в Kotlin 1.5.0
Не успела новая версия языка выйти, а на YouTube уже разбор всех возможностей
📺 Что нового в Kotlin 1.5.0
Не успела новая версия языка выйти, а на YouTube уже разбор всех возможностей
#GooglePlay #Безопасность
New safety section in Google Play will give transparency into how apps use data
Совсем скоро в Google Play появится новая зона безопасности на странице приложения. В ней будет показываться данные, собираемые приложением и которые оно отправляет на сервер, зашифрованы ли такие данные и другие детали, влияющие на безопасность и приватность.
Начиная с весны 2022, все приложения должны будут соответствовать новой политике
Мне нравится вектор мобильных ОС и магазинов на безопасность и вседозволенность разработчикам приложений.
New safety section in Google Play will give transparency into how apps use data
Совсем скоро в Google Play появится новая зона безопасности на странице приложения. В ней будет показываться данные, собираемые приложением и которые оно отправляет на сервер, зашифрованы ли такие данные и другие детали, влияющие на безопасность и приватность.
Начиная с весны 2022, все приложения должны будут соответствовать новой политике
Мне нравится вектор мобильных ОС и магазинов на безопасность и вседозволенность разработчикам приложений.
#Compose
Supporting different screen sizes on Android with Jetpack Compose
Разбор адаптации UI на основе Jetpack Compose для экранов разного размера
Supporting different screen sizes on Android with Jetpack Compose
Разбор адаптации UI на основе Jetpack Compose для экранов разного размера
#Compose
Bottom Navigation and Navigation Drawer Using Scaffold from Jetpack Compose
Scaffold - один из композитных layout в Compose, позволяющий размещать элементы в слотах. В статье найдёте пример как в него вставить навигацию через Bottom Navigation и Navigation Drawer
Взорвало мне это мозг неслабо так. Либо Compose не так хорош и все только сложнее читается, либо автор намудрил. Пока не понял
Bottom Navigation and Navigation Drawer Using Scaffold from Jetpack Compose
Scaffold - один из композитных layout в Compose, позволяющий размещать элементы в слотах. В статье найдёте пример как в него вставить навигацию через Bottom Navigation и Navigation Drawer
Взорвало мне это мозг неслабо так. Либо Compose не так хорош и все только сложнее читается, либо автор намудрил. Пока не понял
Theming basics in Android
Продуманная организация темы в приложении позволит вам очень легко менять стили и добавить ночную тему. Чтобы сделать это правильно, вам надо понять основные термины:
👉 Аттрибуты
👉 Style
👉 Styel vs Theme
👉 Theme Overlay
👉 TextAppereance
👉 Стили по умолчанию
Во всём этом вам поможет разобраться статья
Продуманная организация темы в приложении позволит вам очень легко менять стили и добавить ночную тему. Чтобы сделать это правильно, вам надо понять основные термины:
👉 Аттрибуты
👉 Style
👉 Styel vs Theme
👉 Theme Overlay
👉 TextAppereance
👉 Стили по умолчанию
Во всём этом вам поможет разобраться статья
#AndroidBroadcast #Jetpack #Пагинация
Jetpack Paging 3. Пагинация на Android
Совсем недавно вышел стабильный релиз Jetpack Paging 3.0, в которой полностью переписали решение на Kotlin и Coroutine. Также добавили много возможностей, которых так не хватало ранее, но есть ещё куда стремиться.
Останавливайтесь от чтения и смотрите видео, там найдёте что такое пагинация и как воспользоваться библиотекой Jetpack Paging 3.0 для решения этой задачи
Jetpack Paging 3. Пагинация на Android
Совсем недавно вышел стабильный релиз Jetpack Paging 3.0, в которой полностью переписали решение на Kotlin и Coroutine. Также добавили много возможностей, которых так не хватало ранее, но есть ещё куда стремиться.
Останавливайтесь от чтения и смотрите видео, там найдёте что такое пагинация и как воспользоваться библиотекой Jetpack Paging 3.0 для решения этой задачи
#Navigation #Jetpack #MADSkills
Navigation: Nested graphs and include tag
Продолжение серии материалов о Jetpack Navigation. В новой части вы познакомитесь с тем как работаю вложенные графы навигации, которая позволяет разделить граф на несколько маленьких.
Navigation: Nested graphs and include tag
Продолжение серии материалов о Jetpack Navigation. В новой части вы познакомитесь с тем как работаю вложенные графы навигации, которая позволяет разделить граф на несколько маленьких.
Forwarded from Kotlin Multiplatform Broadcast
#Corouitnes #Flow
Things to know about Flow’s shareIn and stateIn operators
Разбор как операторы shareIn и stateIn как могут увеличить производительность в отдельных случаях, демонстрация разницы между ними и ошибки, которые пользователи могут допустить с ними
Things to know about Flow’s shareIn and stateIn operators
Разбор как операторы shareIn и stateIn как могут увеличить производительность в отдельных случаях, демонстрация разницы между ними и ошибки, которые пользователи могут допустить с ними
#AndroidStudio #WorkManager
Background Task Inspector
Частью будущего релиза Android Studio Arctic Fox является новый инспектор. Он позволяет отследить состояние асинхронных фоновых задач, выполняемых в WorkManager. В статье вы найдёте демонстрацию работы этой новой возможности
Background Task Inspector
Частью будущего релиза Android Studio Arctic Fox является новый инспектор. Он позволяет отследить состояние асинхронных фоновых задач, выполняемых в WorkManager. В статье вы найдёте демонстрацию работы этой новой возможности
#Coroutines
Coroutine Misconceptions: Whose Context Is It Anyway?
В RxJava чтобы получить асинхронное выполнение в цепочке любой разработчик считал нормальным постоянно указывать Scheduler, а вот в Kotlin Coroutine - это уже плохая практика. Любая suspend функция должна позаботиться тем чтобы не привести к блокировки потока при ее вызове, т.е. фактически внутри себя всегда вызывать
Coroutine Misconceptions: Whose Context Is It Anyway?
В RxJava чтобы получить асинхронное выполнение в цепочке любой разработчик считал нормальным постоянно указывать Scheduler, а вот в Kotlin Coroutine - это уже плохая практика. Любая suspend функция должна позаботиться тем чтобы не привести к блокировки потока при ее вызове, т.е. фактически внутри себя всегда вызывать
withContext(Dispatcher.XXX) { … }