Android Broadcast
14.2K subscribers
3.49K photos
335 videos
11 files
5.87K links
Подборка новостей и статей для Android разработчиков.

Связь с автором @android_broadcast_bot
Реклама @android_broadcast_bot

РКН https://abdev.by/rkn_tg_ab
Download Telegram
#Jetpack #Fragment

How AndroidX changes the way we work with Activities and Fragments

Сбор всех важных изменений в Fragment из Jetpack:
👉 Задание layout в конструкторе
👉 OnBackPressedDispatcher - Обработка нажатия back
👉 SavedStateRegistry - возможность сохранения состояния за рамками Fragment
👉 FragmentFactory
👉 FragmentScenario
👉 fragment-ktx API
👉 FragmentContainerView - исправление работы с анимациями при переключение Fragment
#OkHttp #Network

Вышла OkHttp 4.4.0

Что нового:
👉 Новый артефакт bill of materials (BOM) для OkHttp, который позволит вам не задавать версию и держать все библиотеки для OkHttp в нужных версиях
👉 Исправление багов и улучшения
#UI

Android Styling: Prefer Theme Attributes

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

Атрибут - это фактически переменная в понятиях Android стилей, с ссылка напрямую на ресурсы - как вставка литера в коде.
#Fragment

Undocumented startActivityForResult behavior for Fragment

Как бы не было похоже API Fragment и Activity даже методы, называющиеся одинаково ведут себя по разному.

В статье рассказывается про особенности работы startActivityForResult и разницу в его поведении между Activity и Fragment
#Android11

Первая Developer Preview следующей версии Android уже здесь

Новая превью стала впервые доступна так рано, чтобы получить больше обратной связи от разработчиков!
Что в первой сборке:
👉 Поддержка загнутых экранов и экранов с дырками (под камеры)
👉 Улучшения для работы с 5G
👉 Отдельная секция в панели уведомлений для чатиков
👉 Bubbles API теперь будут заставлять использовать для мессенджеров
👉 Поддержка картинок в ответах через уведомления
👉 Neural Networks API 1.3
👉 One-time permission - выдавайте разрешения только пока пользователь не покинет приложение
👉 Улучшения в Scoped storage ведь в 11 версии он уже будет включен для всех
👉 Biometric - поддержка разных уровней верификации и улучшения в архитектуре API
👉 Возможность шаринга blob в файлово системе с помощью BlobstoreManager
👉 Identity credentials
👉 Упрощение тестирования и дебагинга
👉 Больше API теперь под запретом для вызова
👉 Динамическая загрузка ресурсов

Список изменений уже довольно большой и ознакомиться с ним вы можете по ссылке.
#GooglePlay #Location

Safer and More Transparent Access to User Location

Google Play вводит новые политики касательно размещения приложений, которые используют доступ к местоположению в фоне.

Каждое приложение которое хочет использовать местоположение в фоне, теперь будет проверяться на соответствие следующие требования:
👉 Предоставляет ли функция явную ценность для пользователя?
👉 Ожидают ли пользователи что ваше приложение будет осуществлять доступ к местоположению в фоне?
👉 Является ли функция основной для вашего приложения?
👉 Можете ли вы реализовать тот же пользовательский опыт без доступа к местоположению в фоне?

График вступления изменений в силу:
👉 Апрель 2020: обновление политик
👉 Май 2020: разработчики могут запросить проверку своего приложение через Google Play Console (до 2 недель)
⚠️ 3 Августа 2020: Все новые приложения, осуществляющие доступ к местоположению, которые будут публиковать в Google Play должны получить одобрение
‼️ 2 ноября 2020: Все приложения которые получают доступ к местоположению должны быть одобрены либо будут удалены из Google Play
#Firebase #Crashlytics

Announcing the Firebase Crashlytics SDK Beta!

После покупки Fabric компанией Google и интеграции сервисов в Firebase переход подзатянулся. 31 марта Fabric отключают, а мы все еще не может уйти от старых зависимостей и Maven репозиториев.

Все меняется сегодня. Встречайте Firebase Crashlytics SDK. Теперь можно отказаться от зависимостей Fabric. Полное руководство по миграции здесь. Найти исходники SDK вы можете здесь.
#Gradle #Kotlin

Improved *.gradle.kts IDE Support

Следующая версия Kotlin (1.3.70) привнесёт значительные улучшения в работу Gradle Kotlin DSL и работе всего этого в IDE. Этого удалось достичь обновлённому механизму взаимодействия с Gradle Daemon.

Важно - вам потребуется Gradle 6.0+ и IDEA 2019.2+ (Android Studio 3.6+)

На текущих результатах команда Kotlin не останавливается и продолжит развивать Gradle Kotlin DSL. Нас ждет улучшения в уведомлениях об ошибках, явная загрузка обновлённой конфигурации скриптов и др.
#Localization

Localization Library - сделать переключение языков проще

Возможности библиотеки:
👉 Переключение языков на лету
👉 Автоматическая настройка при запуске Activity
👉 Сохранение выбранного языка при перезапуске приложения
👉 Простота использования (по заверениям автора)
#Android11 #ScopedStorage

Scoped Storage on Android 11

В Android 11 нас ждет введение Scoped Storage, отложенный в предыдущей версии, в боевой режим.

Какие изменения произошли:
👉 Не для всех приложение нужно адаптировать ScopedStorage, а только у тех кого targetSdk будет Android 11 или выше
👉 Возможность выполнения операций со множеством файлов (batch)
👉 “All Files Access” - возможность получения доступа ко всем файлам приложением. Это предназначено для файловых менеджеров
#DependencyInjection

A Dependency Injection Showdown

Выбор Dependency Injection (DI) для вашего проекта важный вопрос, так как поменять его в будущем может быть непростой задачей. Сравнение популярных JVM DI: Dagger 2, Koin, Toothpick, Kodein

Мой личный выбор - Koin. Хотите узнать больше аргументов моего выбора - выбирайте 🎥 и если будет 20+ я сделаю видео разбор преимуществ, благодаря которым я выбрал Koin, и недостатков, которые меня волнуют при росте проекта.
#AndroidStudio #Native

Native Dependencies in Android Studio 4.0

Чтобы упростить жизнь разработчикам нативных библиотек Google внедряет возможность подключения нативных зависимостей аналогично тому как это делается с AAR.

Функционал пока экспериментальный и требует включения специальных флагов.

Особенности работы и как опубликовать свою библиотеку вы найдёте в статье
#Android11 #Permission

Exploring the Android 11 Developer Preview: Permission Changes

Обзор изменений системы разрешений в первой Developer Preview Android 11:
👉 One-time permission
👉 Механизм получения/отзыва приложения one-time permission
👉 Изменения в механизме отзыва permission
👉 Изменения в процессе получения разрешения на доступ к местоположению в фоне - теперь это делается через настройки в системе, а не диалог
#AndroidStudio

Вышла Android Studio 3.6

Вышла новая стабильная версия основного инструмента Android разработчика и она привнесла следующие улучшения:
👉 SplitView вместо Layout Preview (по мне стало хуже)
👉 ViewBinding
👉 Обнаружение утечек памяти в Memory Profiler (зачем? есть же LeakCanary)
👉 Color Picker
👉 Idea 2019.2
👉 Улучшения в “Apply Changes”
👉 Интеграция Android Gradle Plugin с Maven Publishing Plugin
👉 R класс теперь генерирует сразу байткод вместо Java кода, это ускоряет kapt и инкрементальную сборку
👉 Новая утилита для запаковки APK. По умолчанию используется для дебажных сборок

Изменений много и всех их не перечислить, но вы можете ознакомиться с ними в полном обзоре
#DependencyInjection

Вышел Koin 2.1.0

In this version:
🚀 Исправление багов и улучшение производительности
⚒️ Улучшения Scope API
🤖 Поддержка создания Fragment через Koin на основе FragmentFactory
🤖 Поддержка State ViewModel
🚒 Улучшения в API для тестов
🎁 Gradle plugin для проверки модулей (пока умеет не так много)
🎉 Много исправлений

Сейчас разработчик Koin активно работает над поддержкой Multiplatform