Size: a a a

Android Broadcast

2020 March 02
Android Broadcast
#Security #Biometric

Using BiometricPrompt with CryptoObject: How and Why

Практически все современные смартфоны имеют встроенные сканеры отпечатка пальца и распознавание лица. Последнее не у всех реализовано хорошо, но что имеем. Наличие таких сканеров позволяет нам шифровать данные, используя уникальный пользовательский ключ - отпечаток пальца или лицо.

В статье разбирается как в Android связать системный KeyStore и биометрическую авторизацию.
источник
Android Broadcast
Есть ли у вас в коде свой класс BaseFragment? BaseActivity/BaseService/BaseBroadcastReceiver тоже считаются
Окончательные результаты
84%
Да
7%
Нет
4%
Только в Legacy
1%
Не знаю
3%
Не скажу, ведь это сверхсекретно
Проголосовало: 727
источник
2020 March 03
Android Broadcast
#Database #SQLite #NoSQL

Mobile Databases in Android

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

Для тех кто хочет увидеть только таблицу сравнения, то смотрите здесь
источник
Android Broadcast
#Jetpack #ArchitectureComponents #Lifecycle

Optimizing Android ViewModel with Lifecycle 2.2.0

Обзор последних возможностей библиотек Lifecycle (LiveData, ViewMode, Lifecycle), ktx расширений и лучших практик:
👉 Делегаты ViewModel
👉 Почему не стоит использовать AndroidViewModel
👉 Какие данные не стоит передавать в ViewModel
👉 Сохранение данных ViewModel
источник
Android Broadcast
#KotlinVocabulary #Kotlin #AndroidDev

Collections and sequences - Kotlin Vocabulary (5:17)

Google решила что вместо создания нового контента, лучше снять видео на свою старую статью
источник
Android Broadcast
Say no to BaseActivity and BaseFragment

Раньше нам приходилось переопределять методы жизненного цикла в Activity и Fragment, создавать базовые классы на их основе, чтобы не дублировать код.

Но Android ушел дальше и вы можете заменить их с помощью ActivityLifecycleCallbacks и FragmentLifecycleCallbacks. Также можете обратить внимание на Lifecycle
источник
Android Broadcast
#Kotlin

Вышел Kotlin 1.3.70

Вышла новая версия Kotlin. Не 1.4, но тоже сладко:
👉 Расширена функциональность StringBuilder, но на JVM не почувствуете, так как сделали перенос функционала с JVM в Common
👉 Часть функционала в KClass теперь не требует зависимости kotlin-reflect
👉 Аннотации Experimental и UseExperimental переименованы в OptIn и RequiresOptIn
👉 Clock и ClockMark переименованы в TimeSource и TimeMark
👉 Добавлена kotlin.collections.ArrayDeque
👉 Collection Builders: buildList(), buildSet() и buildMap()
👉 Новые функции для коллекций: scan(), scanReduce()
👉 Возможно генерации аннотаций типов в байткода для target 1.8+
👉 Улучшение поддержке *.gradle.kts
👉 Улучшение отладчика
👉 Улучшение Kotlin скриптов и примеры
источник
2020 March 04
Android Broadcast
#GoogleIO

Google I/O 2020 отменён

В этом году конференции Google I/O не будет. Точнее в привычном формате для горстки избранных, кто смог получить туда билет. В этом раз вся конференция будет  только онлайн. Причиной всему китайский коронавирус.

Также было объявлено об отмене конференции Microsoft MVP Summit. Интересно отменят ли Kotlin Conf в сентября?

Как по мне, то даже лучше. Спикер будет говорить прямо в камеру и показ слайдов заточен будет под онлайн формат.
источник
Android Broadcast
#AppBundle #DynamicFeature

Local development and testing with on-demand modules

Возможность загрузки модулей вашего приложения динамически - прекрасная возможность Google Play, но тестировать ее можно было только через публикацию App Bundle через Google Play Console ☹️.

В утилите bundletool 0.13.0 появилась возможность тестировать эту фичу локально. Все подробности в статье
источник
Android Broadcast
#UI

How to implement skeletons and shimmering effects on layouts and recyclerViews for Android

Вместо того чтобы показывать прогресс посередине экрана или вообще ничего (надеюсь так не делаете) можно рассмотреть модный вариант - skeleton + анимация с эффектом Шиммера.

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

В статье разбирается как это реализовать при помощи библиотеки AndroidVeil
источник
Android Broadcast
Think before using BuildConfig.DEBUG

Я уверен, что в большинстве проектах, если не во всех используется константы из BuildConfig, а в особенности BuildConfig.DEBUG.

Хорошо это или плохо - вы сможете найти в статье, но уже в название автор спойлерит что не всегда это удачное решение. Суть проста - константа не дает гибкости (
источник
Android Broadcast
#Material #Animation

Implementing Motion

Google показала новую утилиту, которая позволит упростить коммуникацию между разработчиками и дизайнерами для создания прекрасных анимаций - Direct.
источник
Android Broadcast
источник
Android Broadcast
#Meetup #НижнийНовгород

Материалы с нижегородского Android-митапа компании Avito

Стали доступны записи докладов с Android совместного митапа Avito и GDG Gorky в Нижнем Новгороде, который прошёл 29 февраля.

Я рассказал о том, почему стоит выбрать Kotlin Coroutine  для выполнения асинхронных задач в Android.

Жители Львова не смотрите, я еду к вам! В конце марта я выступлю на митапе Kotlin User Group, расскажу этот доклад с добавлением нового контента. Анонс совсем скоро
источник
2020 March 05
Android Broadcast
#Conference #Минск #Flutter

FlutterConf.by - первая конференция по Flutter в Беларуси

18 апреля 2020 (сб) пройдет первая конференция по Flutter в Беларуси. Мы хотим собрать всех Flutter энтузиастов и компании, которые хотят развивать это направление или уже сделали это и ищут специалистов. В программе вас ждут доклады, воркшоп и возможность пообщаться с коллегами.

Уже среди заявленных спикеров (список пополнится):
👉 Remi Rousselet, автор пакетов Provider and Flutter Hooks
👉 Геннадий Евстратов, Lead первого проекта на Flutter в Яндекс
👉 Александр Денисов, возглавляет Flutter компетенцию в EPAM

До 20 марта есть шанс купить билеты по сниженной цене - 20 рублей!

На тему воркшопа вы можете повлиять - пишите свои пожелания в чате конференции и чтобы вам в целом хотелось увидеть на конференции.

Организаторами выступают Android Broadcast и SUP.
источник
Android Broadcast
Принимайте участие в розыгрыше билетов на FlutterConf.by.

Условия участия простые:
1️⃣ Подписаться на Telegram канал
2️⃣ Подписаться на YouTube канал Android Broadcast (тут появятся записи докладов)
3️⃣ Заполнить анкету участника розыгрыша

Розыгрыш состоится 12 марта в 21.00
источник
Android Broadcast
#ProGuard #R8 #Navigation

How to generate Proguard/R8 rules for Navigation component arguments

Navigation Architecture Component не имеет поддержки работы с ProGuard/R8, точнее параметры, которые вы указываете в XML графе не добавляет в исключения типы, которые указываются как аргументы.

Исправляется это добавлением всех этих типов в proguard-rules.pro вашего проекта, но будет правильнее автоматизировать этот процесс, что и приводится в статье.
источник
2020 March 06
Android Broadcast
#OkHttp #Networking

OkHttp Interceptor - Making the most of it

Популярная библиотека для работы по сети по протоколу HTTP OkHttp используется во всех проектах на Android, где есть выход в сеть.

Библиотека имеет одну удобную возможность  - перехват любого запроса (Intercepting). С помощью нее можно логировать любой запрос (например, OkHttp Logging Interceptor).

В статье показывается пример как вы сможете использовать мощь Interceptor в своем коде.
источник
Android Broadcast
#GooglePlay #DynamicFeature #DynamicDelivery

Dynamic Delivery в многомодульных проектах (часть 2)

Продолжение статей о возможности загрузки функционала вашего приложения динамически на основе Dynamic Delivery.

В новой части статьи рассказывает об:
👉 организации архитектуры в приложения с учетом Dynamic Delivery
👉 как настроить проект в Gradle
👉 как тестировать приложения с таким функционалом

Первая часть статьи здесь
источник
Android Broadcast
#UI #Animation

TransformationLayout

Хотите быстро превратить кнопку в карточку с анимацией? Может даже красиво открывать элемент списка в целый экран?

Все это вы сможете сделать с помощью библиотеки TransformationLayout, которая упростит работу с Transition и Activity Transition.
источник