Android Broadcast – Telegram
Android Broadcast
14.4K subscribers
3.68K photos
367 videos
11 files
6.1K links
Подборка новостей и статей для Android разработчиков.

Реклама и связь с автором @ab_manager

РКН https://abdev.by/rkn_tg_ab #MQRZR
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
Сравнение приложения до Compose и после
#Android11

Treble Plus One Equals Four

Усилия Google по упрощению выпуска обновлений для устройства начинают окупаться. Android 11 стал само быстро распространяемой версией Android, а все новые SoC Qualcomm будут получать обновления для 4 версий ОС и 4 года обновлений безопасности.

В статье вы найдете подробности того, что сделали для ускорения обновления в рамках Project Treble
#Jetpack #AppStartup

App Startup, Part 2

Продолжение серии статей про новую библиотеку App Startup. В новой части рассказывается про то как мигрировать инициализацию WorkManager на App Startup, а также как отложить инициализацию (lazy). Все это подкрепляется оценкой производительности разных подходов.
#Kotlin #Jetpack #MAD

Using KTX libraries

Kotlin - основной язык для разработки под Android, но всё Android SDK написано на Java. Чтобы сделать удобной опыт использования Kotlin в Android максимальным разработчики из Google сделали 2 вещи:
👉 Добавляют аннотации о nullability в Java код
👉 Новые библиотеки Jetpack стараются писать на Kotlin
👉 Для существующих библиотек пишутся Kotlin расширения - KTX

В статье вы найдете больше информации о KTX расширениях, которые помогут вам сократить количество Kotlin кода в Android проекте.
#Security #Jetpack

Обновление документации "Permissions"

Документация по Permissions была обновлена на официальном сайте Android Developers. Теперь она содержит подробные описания:
👉 как правильно запрашивать разрешения в Runtime
👉 как работать если пользователь отказал в получении разрешения
👉 какие подходы использовать, чтобы объяснить, зачем вашему приложению вообще нужно какое-то разрешение
👉 Новый способ получения разрешение через новое ActivityResult API из androidx.activity 1.2.0
👉Разрешения для приложений по умолчанию (звонилка, браузер, лаунчер и др.)
👉Объявление собственных разрешений
👉Лучшие практики по работе с разрешениями
#Testing

Быстрый старт: гайд по автоматизированному тестированию для Android-разработчика. JVM

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

В статье (она немаленькая) раскладывается все по полочкам: базисы и особенности тестирование под Android. Вы сможете понять основные понятия и как тесты реализуются при разработки в Android
👍1
#Security #ProGuard #R8

Оптимизация сборок Android приложений: ProGuard, D8, R8. Тайны обфускации

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

Статья охватывает все важные аспекты оптимизации сборки:
👉 Зачем использовать эти инструменты
👉 Как работает ProGuard/R8
👉 Оптимизация ресурсов Android приложения
👉 D8/R8

Статья очень толковая, подробно разбирает все аспекты. Рекомендую к прочтению. Автору респект!
#Gradle

Gradle Doctor - это плагин, который анализирует конфигурацию Gradle и определят ошибки в конфигурации, тормозящие скорость сборки
#Kotlin

Kotlin Delegation by Inception

Разбор делегатов из Kotlin на примерах упрощения различных задач Android разработки:
👉 Получение значение из Bundle
👉 Работа с Intent
👉 Работа с View
#Performance

Разрушаем мифы о производительности Android

Популярность всегда преследуется мифами. Так случилось и с Android. Разработчики, которые давно в этой ОС помнят о старых оптимизациях на уровне Java кода из первых версий Android. В статье разрушают современные мифы:
👉 Приложения на Kotlin больше и медленнее, чем приложения на Java
👉 Геттеры и сеттеры обходятся дорого
👉 Лямбда-выражения медленнее, чем внутренние классы
👉 Аллоцирование объектов — дорогое удовольствие, лучше использовать пулы
👉 Профилирование моего отлаживаемого приложения — это хорошая идея
а также другие странности
Да кто такой этот ваш Mobile DevOps?

Есть ли такой человек как Mobile DevOps? Нужен ли он команде? За чем он следит и кака от него польза? Ответы в статье
Реализовывали поддержку Android Enterprise в production приложениях?
Anonymous Poll
5%
Да
20%
Нет
68%
Что это?
8%
Не участвую в опросе
#SQLite #Performance

Android Room Hidden Costs

При использовании Room Android разработчики зачастую использую реактивные стримы (RxJava, Coroutines Flow) для получения всех изменений в данных. Важная особенность этого процесса, что при вставке любых данных выполняется повторный запрос в БД. В статье разбирается как можно оптимизировать это.

Полноценно сделать это не получилось, также автор не разобрал что будет в случае выполнения транзакций.
#Gradle

Mirakle - Gradle плагин для переноса процесса сборки на удаленную машину. Поможет тем кто не хочет носить с собой большой мощный ноутбук (актуально ли это с чипами Apple M1?) и иметь отдельную мощную машину где-то. Учтите, что без быстрого интернета вам не обойтись.
Как правильно идентифицировать Android-устройства

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

В статье автор разбирает различные подходы к идентификации пользователя в современной Android разработке с учетом всех ограничений. Обратите внимание на 2 библиотеки: Android-device-identification и Fingerprint-android.
#Стажировка

Как устроены технические стажировки Авито

У вас есть возможность получить опыт работы в одной из крутейшей компании России, научиться работать в Scrum. Помимо всего прочего стажировка оплачиваемая , удаленная и вас будет свой наставник - инженер из Авито. Вы будете решать боевые задачи с первого дня!

Все позиции на стажировку можно найти здесь. После успешной стажировки вы сможете стать полноценным сотрудником Авито.
#Android11

The Quick Developers Guide to Migrate Their Apps to Android 11

Для всех тех кто не обновляет свои приложения до последней версии targetSdk, только когда Google заставит, рекомендую ознакомиться со статьей, в которой автор разбирает обновления в коде:
👉 Foreground Service Type
👉 Доступ с местоположению в фоне
👉 Одноразовые разрешения (One-Time Permissions)
👉 Scoped Storage
👉 Ограничения на доступ к другим приложениям
👉 Уведомления
👉 Отслеживание показа IME
👉 AsyncTask Deprecated
👉 Множество ограничений и изменений в поведении Toast
#Flow #Coroutines

FlowBinding 1.0.0 уже в релизе (EN)

Для всех кто любит реактивное программирование, использовал библиотеку RxBinding возрадуйтесь - теперь у вас есть стабильная версия binding на основе Coroutines Flow
#SQLite

Полнотекстовый поиск FTS3, FTS4 и FTS5 в Android

Full Text Search (FTS) - инструмент, который позволит вам эффективно искать данный в SQLite БД. Одной из явных отличительных особенностей ее является поддержка Unicode, что позволяет делать текстовый поиск не только в латинице

В статье разбирается:
👉 как работать с FTS в Android
👉 что происходит под капотом (виртуальные таблицы)
👉 сравнение различных версий FTS
👉 интеграция FTS 5 через отдельную библиотеки (придется отдельно подключать SQLite)