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
#Gradle

Android Environments build Gradle plugin

С приходом билд системы на основе Gradle в Android появилась возможность использования BuildConfig - специального класса, в котором содержится ряд стандартных констант (версия, buildVariant и пр.) так и имеется возможность добавлять свои собственные из Gradle скриптов.

Проблема в том, что описывать множество таких констант для разных buildType и productFlavor не является удобным. Для решение этой проблемы я нашел удобный Gradle плагин, который позволяет описывать константы в property файлах, расположенных в соответствующей buildType и productFlavor папке в исходниках.
#AndroidAcademy #Moscow

Android Academy в Москве: Advanced Course

Android Academy возвращается в Москву с новым курсом Advanced 🎉. В рамках него вы сможете познакомиться с различными темами из Android разработки на более глубоком уровне.

Курс будет полезен тем кто уже успел окончить курс Fundamentals, так и практикующим инженерам, которые хотят улучшить свои знания в Android разработке.

Вас ждет 6 лекций по 1.5 часа каждые 2-3 недели:
1️⃣ Advanced Multithreading
2️⃣ Optimizations
3️⃣ Advanced & Secure Networking
4️⃣ Advanced Architecture
5️⃣ DI: How to and why
6️⃣ Android Internals

Когда: 25 июля 19:00
Где: офис "Авито", БЦ «Белые Сады», ул. Лесная, 7

Участие бесплатное по предварительной регистрации
#Yandex

Yandex Droid Mission

Разработчики Яндекса запустила онлайн-квест с задачами, которые часто приходится решать Android‑специалистам.

Конкурс проходит с 25 июня по 25 июля. Участвовать в онлайн-квесте могут граждане России и других стран СНГ, достигшие возраста 18 лет.
#Security #Storage #Keystore

Storing data securely on Android. Part 1 - Introduction

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

Каким образом в Android можно защитить данные от злоумышленников? Стандартные подходы это:
👉 Повышение сложности доступа к данным: хранение их во внутренней памяти устройства, шифрование и пр.
👉Использовать Android keystore system для хранения ключей
#Security #Storage #Keystore

Storing data securely on Android. Part 2 - KeyStore Symmetric

Как использовать Android keystore system с симметричным ключом (доступно на Android API Level 23+)
#GarbageCollector #MemoryLeak

Everything you need to know about Memory Leaks in Android

Android имеет хорошую систему очистку памяти, которая улучшается с выходом каждой новой версией ОС. Но допустить утечку памяти все также остается возможным. В статье довольно простым языком и наглядными иллюстрациями показывается:
👉 Что такое Stack и Heap
👉 Как очищается память Garbage Collector-ом
👉 Как возникают утечки памяти и как не допускать их
👉 Последствия утечек памяти
👉 Поиск утечек памяти
#AndroidQ

Capturing Audio in Android Q

В Android 10 Q появилась возможность захватывать аудио других приложений с помощью AudioPlaybackCapture API.

Например, с помощью этого работает функция Live Caption, которая позволяет отображать субтитры для аудио любого приложения. Также можно стримить игры с устройства со звуком.

Чтобы осуществлять захват аудио, пользователь должен предоставить разрешение, а также вы можете запретить захватить аудио вашего приложения полностью или частично.
#RxJava #Networking

RxJava 2: Parallel Multiple Network Calls Made Easy

Как вы выполняете 2 и более Observable из RxJava параллельно? Все немного более хитро чем использовать операторы merge и zip. Больше подробностей в статье или смотрите код в следующем посте 👇👇👇
Пример правильного запуска двух Observable параллельно. У каждого Observable, который вы передаете в merge необходимо вызывать на отдельном Scheduler.
#WorkManager #AndroidX

Workout your tasks with WorkManager — Basics

Продолжение серии статей о WorkManager. В этой части вы можете узнать о:
👉 Основные компоненты WorkManager
👉 Что происходит под капотом WorkManager
👉 Типы запросов: OneTimeWorkRequest и PeriodicWorkRequest
👉 Типы ограничений, которые можно применить для запросов: состояние сети, уровень батареи и пр.
👉 Передача данных в запрос
👉 Добавление запроса на обработку

Часть 1: Intro
#BuildConfig #Gradle

Android Version Code Tricks

В Android Gradle Build системе у вас есть возможность переопределить versionCode для любого из BuildVarian , с помощью метода setVersionCodeOverride.

Хитрость заключается в том, что вызов этого метода влияет только на значение versionCode в AndroidManifest в конечном APK, но не меняет его в BuildConfig файле. Баг или фича? Больше подробностей смотрите в статье.
Forwarded from Mobile People Talks (Александр Денисов)
Асинхронность - знаешь что об этом ты? Vol.2

А вот и вторая часть дебатов за асинхронность. Здесь ведущие продолжают разговор с того места, где остановились в прошлый раз. Александр рассказывает про ситуацию с Flutter, а Владимир с ReactNative. Кирилл с Данисом не дремлют и задают каверзные вопросы, благодаря которым какие-то вещи приходится копать прямо в процессе записи подкаста!

🎧 SoundCloud
🎧 Apple Podcasts
#Kotlin #Collections

The Mystery of Mutable Kotlin Collections

По сравнению с Java в Kotlin присутствует одна примечательная особенность API - разделение на изменяемые (mutable) и неизменяемые (immutable) коллекции. Например, MutableList<E> и List<E>, MutableSet<E> и Set<E>.

Реализации этих интерфейсов в языке не существует - Kotlin не стал идти по пути создания собственных коллекций, а сделал только обертки над стандартными коллекциями из платформенного API.

В статье можно найти больше об особенностях работы коллекций в Kotlin:
👉 Реальность модификации List<E>
👉 Какие коллекции создаются при вызове listOf() и mutableListOf()
👉 Во что транслируются в байткоде использования MutableList<E> и List<E>
Хотите по настоящему неизменяемые коллекции под капотом в Kotlin?
Final Results
59%
Да
41%
Нет
Forwarded from ❗️NEWS Android Dev Подкаст (Denis Nek (Slow responses))
https://androiddev.apptractor.ru/android-dev-podcast-97/

Выпуск #97. Репортаж с Droidcon Berlin

На этой неделе, в Берлине, прошла крупная конференция по Android разработке - Droidcon! 3 дня, 1200 участников, 5 треков, более 100 докладов! Наши внештатные корреспонденты - Михаил Емельянов и Александр Крылов из компании ЦФТ побывали там и записали свои впечатления и полученную информацию.

- Droidcon в этом году и прошлом, различия;
- Какие были компании, стенды, общение со спикерами, неожиданные встречи;
- Обзоры докладов, сессий по каждому дню. На что стоит взглянуть, чего ожидать;
- Общее впечатление, пожелания;

https://www.de.droidcon.com/schedule - расписание конференции

Ведущие: Михаил Емельянов, Александр Крылов
#News

Подвел итоги опроса. Участие в нем приняло 82 человека из 480 т.е. каждый шестой. Результаты следующие:
👉 Большая часть аудитории (96%) Android разработчики
👉 Расположение по странам: чуть больше половины это Беларусь, оставшиеся - половина в России и Украине
👉 Самые популярные используемые языки - Kotlin (96%) и Java (75%)
👉 Чуть больше половины опрошенных не пишут тесты 😞
👉 Полезность контента на канале - 89%
👉 80% нравятся опросы
👉 Значительная часть аудитории заинтересована в аудиозаписях с моим мнением

Взял себе на заметку что стоит улучшить:
👉 Следить за грамотностью
Буду искать инструмент, которые позволит мне проверять посты более тщательно. Рад вашим советам

👉 Нет доступа к платным статьям на Medium
Предлагаю несколько вариантов:
💲оплатите подписку
📖используйте "Instant View" в Telegram
🕶️открывайте статьи в режиме "Инкогнито"

👉 Слишком большое количество информации и читатели не успевают все посмотреть
Ранее я ввел правила по ограничению количества постов (не более 4 в день и воскресенье выходной). Буду стараться также и в будущем не спамить
#BestPractices

The technical choices I make to build great Android apps

Важным началом разработки любого приложения это есть принятия подходов, которые будут использоваться при создание вашего единорога! Разработчики приложения "A-Z" делятся своим опытом:
1️⃣ UI
2️⃣ Качество кода
3️⃣ Архитектура приложения
#Course

raywenderlich.com

Хороший ресурс с огромным количеством онлайн курсов по различным тематикам по Android:
👉 MVVM on Android
👉 Android KTX
👉 MotionLayout
👉 Обширный курс по анимациями
и много много других курсов.

Ресурс будет более интересен начинающим Android разработчикам и тех кто хочет быстро получить вводные по новым библиотекам.

Материалы доступны онлайн и оффлайн по подписке 20$/месяц
#Meetup #Moscow

FunCorp Summer Droid Meetup

Компания FunCorp организовывает большой летний Android митап в рамках которого я буду рассказывать о новинке из Kotlin Coroutines - Flow.

В программе вас ждет:
👉 «Сбор и анализ неординарных данных Android-приложения», Дмитрий Васильев@FunCorp
Рассказ о сборе различных технический показателей приложения, зачем это делать и как их анализировать.

👉 «Coroutines Flow», Кирилл Розов@Epam
Kotlin Coroutines Flow - новинка из корутин, которая предоставляет холодные сhannel и открывает новые возможности. В рамках доклада вас ждет разбор Flow.

👉 «Сборка Android приложения. Задачка со звёздочкой», Антон Потапов@FunCorp
Не Gradle едина сборка Android приложений! В докладе будут рассмотрены альтернативные системы сборки (Buck, Bazel, Jeka) и сравнение их с Gradle.

👉 «Кодогенерация без kapt», Михаил Розумянский@Joom
Процессинг аннотаций - это бич скорости сборки приложений. Можно ли избавиться от kapt и улучшить свою жизнь?

👉 «Model Driven-конфигурация приложения на Kotlin DSL», Андрей Говоровский@Mail.ru
Рассказ об опыте использования Kotlin DSL для описания модели конфигурации приложения и генерация кода на основе этих моделей

Когда: 12.00, 3 августа 2019, Суббота
Где: Сад Эрмитаж, Каретный ряд, д 3, стр 6, «Веранда 32.05»

На YouTube канале FunCorp будет вестись прямая трансляция мероприятия, а также там вы можете найти записи предыдущих митапов.

P.S. Для всех тех кто хочет гарантированно попасть на мероприятие - пишите мне в личку. У меня есть 2 билета.