Size: a a a

Android Broadcast

2020 August 15
Android Broadcast
#Security

Implement security by design for your apps

Google обновила документацию по безопасности, обеспечив более простую навигацию. Основные разделы:
👉 Encrypt your data
👉 Detect insecure devices
👉 Authenticate users and keys with biometrics
👉 Communicate securely
👉 Address issues found by Google Play
👉 Be the first to know
👉 Test, test, and test again
👉 Audit third-party libraries
источник
Android Broadcast
#WearOS

What’s happening in Wear OS by Google

Жива ли WearOS или нет? Может ли жить платформа без устройств на ней? Google продолжает развивать ОС:
👉 Осенью будет обновление со значительным улучшением производительности и системного UI, таймер для мытья рук, улучшенное приложение погоды
👉 Новые производители WearOS часов - Oppo, Suunto и Xiaomi
👉 Обновление WearOS до Android 11 и недавняя androidx.wear 1.1.0
источник
2020 August 17
Android Broadcast
#UI #View

Writing Performant Layouts

Jetpack Compose все еще в разработке, а это значит что старый UI на View все еще с нами и нам надо писать его эффективно, помня о его проблемах.

В статье вы найдете основные рекомендации. Новичкам полезно, а вот бывалым верстальщикам будет просто тратой времени!
источник
Android Broadcast
#AndroidBroadcast #Analytics #Architecture

Делаем аналитику правильно c Aviasales.ruAviasales.ru
Где: YouTube канал Android Broadcast
Когда: среда, 19 августа, 20:00 (GMT+3)

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

В выпуске обсудим правильный подход к трекингу сообщений из Android приложений, который соответствует всем требованиям: расширяемость, тестируемость, удобство работы, многомодульность и пр.

Своим опытом делится Максим Дворецкий, Android разработчик в Aviasales, которые не так давно прошли через рефакторинг своей аналитики.
источник
Android Broadcast
#Kotlin #Coroutines

Вышли Coroutine 1.3.9
👉 Поддержка CoroutineContext в Flow.asPublisher и других билдерах (#2155).
👉  Обновление Kotlin до 1.4.0 (анонс уже совсем скоро)
👉  Переход на новую схему публикацию мультиплатформенных библиотек - HMPP (Hierarchical MPP). Тоже новая фича 1.4. Скоро появится отдельный пост об этом

Что изменилось в артефактах:
👉 Удалены kotlinx-coroutines-core-common и kotlinx-coroutines-core-native 
👉  Для мультиплатформенного использования теперь достаточно подключить kotlinx-coroutines-core в commonMain
👉  Тот же артефакт может использоваться в качестве зависимости для platform-specific артефакта в platform-specific source-set.
источник
Android Broadcast
#RxJava #Backpressure

Анатомия backpressure в реактивных потоках

Backpressure - один из важных элементов реактивной парадигмы и может казаться что это довольно сложный механизм, но автор статьи рассказывает о том как "под капотом" устроен этот механизм и что, фактически, реализовать его можно довольно быстро.

В качестве примере автор приводит код, в котором он описал упрощённый механизм backpressure при помощи обычного семафора.
источник
Android Broadcast
#Kotlin #Kotlin1_4

Вышел Kotlin 1.4

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

Давайте конкретнее:
👉 Скорость подсветки синтаксиса выросла от 1.5 до 4 раз, как и автодополнение
👉 Отладчик Coroutine
👉 Обновленный мастер для создания Kotlin проектов
👉 Обновленный компилятор
👉 Новая система вывода типов (Type Inference)
👉 SAM для Kotlin интерфейсов
👉 Улучшения стандартной библиотеки
👉 Explicit режим для авторов библиотек, который заставляет явно указывать модификаторы доступа и др. важные для библиотек вещи
👉 Возможность использовать именованные и позиционные аргументы
👉 В конце параметров теперь можно ставить запятую
👉 Теперь можно использовать break и continue внутри when выражений, который находятся в циклах
👉 Улучшения в Kotlin Multiplatform

Также добавили всего много нового экспериментального
источник
2020 August 18
Android Broadcast
#BestPractice

Android Development | Best Practices

Большая статья от разработчика с более чем пятилетним опытом в Android разработке, которая содержит 25 советов и рекомендаций, для того чтобы улучшить и оптимизировать ваше приложение. Среди рекомендаций:
👉 Выбор архитектуры и Build Type'ов
👉 Рекомендации по работе с изображениями и layout'ами
👉 Много советов по безопасности приложения
👉 Оптимизация Gradle

К какому пункту автор даёт пояснение и полезные ссылки.
источник
Android Broadcast
#Notifrications #Kotlin #DSL

Android Notifications DSL 0.1.0

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

Удобство создания Notification в Android SDK хромает:
👉 Множество Builder-ов
👉 Фрагментированность возможностей уведомлений на разных версиях Android
👉 Непонятно какие параметры надо явно задавать, чтобы получить необходимый тип уведомлений
👉 Отсутствие Compat API для NotificationChannel
👉 Как хорошо реализовать альтернативный вариант для старой версии Android, а для новой показывать более функциональный?

Все это заставило задуматься о создании библиотеки Android Notification DSL, которая позволит избавиться от этих недостатков. Библиотека опирается на возможности NotificationCompat и Notification из Android SDK

Разработчику библиотеки @krlrozov очень важна ваша обратная связь. Пишите в личку или давайте обсуждать в @android_broadcast_talks
источник
Android Broadcast
#Kotlin #DateTime

Первый релиз Kotlinx DateTime - 0.1.0

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

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

Библиотека включает в себя классы:
👉 Instant
👉 Clock
👉 LocalDateTime
👉 LocalDate
👉 TimeZone и ZoneOffset
👉 Month и DayOfWeek 
👉 DateTimePeriod
👉 DatePeriod
👉 DateTimeUnit

В репозитории вы найдете больше подробностей и примеры использования нового API
источник
Android Broadcast
#Kotlin #Serialization

Вышла KotlinX Serialization 1.0.0-RC

Официальная библиотека сериализации от разработчиков Kotlin подходит к релизу и нас ждут изменения
👉 Миграция на Kotlin 1.4
👉 Изменение и стабилизация API
👉 Исправление багов
👉 Улучшение производительности
источник
2020 August 19
Android Broadcast
#Tooling #Performance

Yet Another Methods Profiler for Android (YAMP)

Утилита для анализа  .trace файлов, аналогичная Android Profiler, но скорость работы выше и управление удобнее.

Такого рода инструмент позволяет понять какие методы у вас вызывались и где было потрачено много времени, чтобы расследовать проблемы в производительности.

Скачать последний релиз можно ➡️здесь
Подробное руководство найдете в README на Github

Задать свои вопросы автору @Grishberg вы можете в чате @android_broadcast_talks
источник
Android Broadcast
#Conferenсe #Online

2020 год получился очень насыщенным на события. Но впереди еще осень, а это значит, что конференционный сезон в самом разгаре! Вопреки всему, уже 11-14 ноября пройдет Mobius 2020 Moscow. И снова в онлайне! 

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

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

Если вы еще думаете, стоит ли участвовать - вот вам знак 🙂 Переходите по ссылке, заполняйте форму подачи заявки на доклад и становитесь спикером Mobius 2020 Moscow. Стоит поспешить, приём заявок открыт до 31 августа!

По всем вопросам можно писать @OksanaMiroshnichenko
источник
2020 August 20
Android Broadcast
#Fragment

Fragments: Rebuilding the Internals

В релизе Fragment 1.3.0-alpha08 произошел рефакторинг Fragment под капотом. Одна из новинок - FragmentStateManager, в который было выделено много логики из Fragment.

FragmentStateManager отвечает за:
👉 Переход Fragment между методами его жизненного цикла
👉 Запуск анимаций
👉 Выполнение отложенных транзакций

Благодаря этому рефакторингу:
👉 было закрыто более 10 багов долгожителей в Fragment
👉 дало дорогу поддержки множеству back stack-ов в рамках одного FragmentManager
👉 Заложена основа для упрощения жизненного цикла Fragment
источник
Android Broadcast
#Jetpack

Обновление Jetpack 19.08.2020

👉 Concurrent 1.1.0: поддержка ListenableFuture и Kotlin Coroutines
👉 Webkit 1.3.0: улучшения в работе с темной темой и возможность проверки работает ли WebView в отдельном процессе
👉 Fragment 1.3.0-alpha08: переписана работа с состоянием Fragment, что позволило закрыть множество старых багов
👉 AppCompat 1.3.0-alpha02: заменили растровую графику векторной, WindowInsetsCompat стало использовать Android 11 API
👉 Biometric 1.1.0-alpha02: портированы API из Android 11, исправление багов и утечек памяти
👉 Core 1.5.0-alpha02: новые API для NotificationCompat и WindowInsetsCompat
👉 Множество новых beta релизов
источник
Android Broadcast
#Jetpack #Security

Новая библиотека Security Identity Credential

Библиотека предоставляет бэкпорт нового API из Android 11 и использовать его, начиная с API 24 ( Android 7.0)
источник
Android Broadcast
#GooglePlay

Google Play In-App Review API: integration and experience

В последней версии библиотеки Google Play Core появилась возможность оставлять отзывы на приложения напрямую из приложения без необходимости открытия Google Play.

В статье рассматривается опыт интеграции этой возможности и тестирование этой возможности. Как результат рост количества отзывов в 5 раз!
источник
Android Broadcast
#Test

Автотесты на Android. Картина целиком

Как выстроить автотесты в вашем проекте? Это тяжело? В команде Avokado так не считают и в статье отвечают на ряд вопросов:
👉 Зачем нужны автотесты?
👉 Процесс написания тестов
👉 Инструменты
👉 Где запускать тесты?
👉 Инфраструктура
источник
2020 August 21
Android Broadcast
#Design #Material

Android Design System and Theming: Typography

Подробный разбор работы со шрифтами в Material Design на Android:
👉 Ресурсы шрифтов
👉 Стандартные стили
👉 Система шрифтов Material Design
👉 Темы и стили для текста в Android
источник
Android Broadcast
#RecyclerView

RecyclerView.ItemDecoration: используем по максимуму

RecyclerView есть в любом нативном Android приложении. В статье делятся опытом применения ItemDecoration. С помощью этого класса можно решить много задач интересным образом и более эффективно чем через View
источник