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

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

РКН https://abdev.by/rkn_tg_ab
Download Telegram
#Новости

Проанализировав результаты опроса и то что я хочу делиться новостями и идеями о развитии проекта, я решил что лучше сделать следующее:
👉 В основной канал будут попадать только новости, связанные с Android контентом, а не о проекте полностью
👉 В новом канале с новостями будет все что описано выше + специфичные опросы касательно развития, больше новостей о том над чем работаю сейчас.

Это не коем образом не повлияет в негативную сторону для текущего канала и позволит давать мне больше информации о развитии проекта
#RecyclerView

Square Cycler – a RecyclerView API

Взгляд от разработчиков из Square (авторы OkHttp, Retrofit, Picasso, Dagger 1) на создание списков на основе RecyclerView. Основные принципы:
👉 Декларативный подход
👉 Строгая типизация
👉 Поддержка популярных возможностей: edge decoration, sticky headers и др.
👉 Легкий способ создания элементов
#Kotlin #CompilerPlugin #KotlinIR

Exploring Kotlin IR

Kotlin Intermediate Representation (IR) - это специальный формат, в который превращается весь Kotlin код, перед тем как будет скомпилирован в конечный код (JVM, JS или Native).

Возможно вы уже слышали про плагины Kotlin компилятор, которые дадут возможность менять IR и создать фреймворки и библиотеки невиданные раннее. Фактически плагины - это Java Annotation Processor на стеройдах и работающий за пределами JVM!

Так вот доступ к плагинам компилятора уже можно получить. Он не имеет документации и нестабилен, но уже давно используется командой Kotlin и сторонними разработчиками, о чем и идет речь в статье.
#Fragment

Android Fragments: FragmentFactory

FragmentFactory - это API, которое позволит вам избавиться от ограничений с созданием Fragment. Раньше вам обязательно было именно конструктор по умолчанию, но теперь вы можете:
👉 Не иметь конструктора по умолчанию
👉 Выполнять транзакции Fragment, без созданных экземпляров, а только по классу Fragment
👉 Более простым способом создавать Fragment с помощью Dagger 😁
В дополнение к Patreon появилась еще одна возможность поддержать Android Broadcast - через сервис Boosty.

Почему это важно? Это позволит сервису развиваться так как идей множество. Главная из них - обучающие видео по разным популярным темам и публикация их на YouTube.

К сожалению, производство видео тяжелый и затратный процесс т.к. требует качественного монтажа и оборудования. Ваша помощь сделает это более реалистичным.
#Dagger #Modularization

Using Dagger in multi-module apps

Официальное руководство по использованию Dagger в многомодульных проектах. Руководство также покрывает использование Dynamic Feature. Ну и как же без лучших практик.
#Gradle

Вышел Gradle 6.2

Новая версия системы сборки привнесла следующие улучшения:
👉 Проверка зависимостей по контрольным суммам и подписи
🔥 Возможность шарить кэш зависимостей
👉 Возможность описания что зависимости должны получаться только из заданного репозитория
👉 Проверка Gradle Wrapper

Конечно же в версии еще много маленьких изменений, багфиксов, улучшений документации и пр.
#AndroidAcademy #Minsk

Android Academy Minsk Advanced Topic #2 Architecture

Одна из самых важных тем в создание современных приложениях будет раскрыта уже через неделю на очередной лекции от Android Academy Minsk. Вы узнаете про принципы построения хорошей архитектуры, Clean Architecture, проблемы архитектуры Android приложений, модуляризация проектов.

Когда: 19.00 24 февраля
#Опрос #Testing

Опрос по тестированию в мобильной разоработке

Авторы Kaspresso и Avito-android решили провести опрос про тестирование мобильных продуктов.

Прохождение опроса займет у вас всего пару минут и поможет сделать тестирование на мобильных платформах лучше.
#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. Нас ждет улучшения в уведомлениях об ошибках, явная загрузка обновлённой конфигурации скриптов и др.