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

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

РКН https://abdev.by/rkn_tg_ab #MQRZR
Download Telegram
Everything you need in your app for 2019 от Adrian Devezin

Что будет трендами в Android разработки и надо использовать разработчикам, чтобы на любом собесе быть героем 😀 ?

Все тренды 2019 связаны с 3 векторами развития Android:
👉 телефоны становятся сильнее с большими вытянутыми экранами
👉 cледующий миллиард пользователей - это развивающиеся страны: Индия, страны Африки и Южной Америки, устройства на которых слабые
👉 приложения обрастают архитектурами, добавляются новые библиотеки, поддерживается множество версий Android и размеров экранов. Все это ведет к увеличению размеров APK

В статье вы найдете технологии, которые стоит применять:
👉 Android Architecture Components
👉 MVVM архитектура
👉 WorkManager
👉 Fastlane
👉 Layout для больших экранов, поддержка больших экранов, Chrome OS, складные телефоны
👉 ConstraintLayout
👉 Неблокирующий UI
👉 Material Design
👉 Поддержка темной темы
👉 Kotlin
👉 Kotlin Coroutines
👉 Перемещение управления вниз экрана
👉 App Bundle
👉 Dynamic Features
👉 Модуляризация приложений в Gradle
👉 Android Go версии приложений

Знаете еще тренды? Давайте обсуждать их в @android_broadcast_discussions
#RecyclerView

Add extra depth to your list using parallax от Patrick Elmquist

NestedScroll - очень приятная и интересная вещь. Они помогают сделать UI очень интерактивным и оставляют лучшие впечатления от работы с приложением у пользователей. В статье вы найдете один рецепт как сделать параллакс эффект с двумя RecyclerView.
#Kotlin #Performance

Kotlin: For-loop vs ForEach от Elye

Kotlin добавил функция расширения для преобразования коллекций. Всегда ли они так эффективны? В статье вы найдете сравнение цикла for и forEach функции.

Результаты следующие:
👉 Для IntRange, LongRange и прочего - цикл for
👉 Для коллекций (list, set, map) - forEach функция
👉 Sequence - forEach функция
#BestPractices

Thoughts after two years as an Android Developer от Jakub Anioła

Советы разработчика после 2 лет создания приложение под Android:
👉 Следите за новостями в Android разработке
👉 Избегайте использования сторонних библиотек
👉 Делайте архитектуру для каждого приложения, независимо от его размера
👉 Тестируйте код
👉 Используйте CI и CD
👉 Используйте код ревью
👉 Kotlin поможет вам писать приложения быстрее и надежнее
👉 Не нужно всегда втягивать все самые трендовые технологии в проект
👉 Посещайте митапы сообществ и конференции, смотрите записи докладов
#GooglePay

8 Steps to Google Pay on Android от Joe Birch

Для тех кто планирует реализовать использование Google Pay в своем приложение будет полезно ознакомиться с руководством от Joe Birch
#RecyclerView

Smooth cross RecyclingViews Swipe от Elye

Хотели сделать вложенный горизонтальный RecyclerView внутри вертикального RecyclerView как в Google Play? Вот вам руководство как правильно обрабатывать события жестов с помощью RecyclerView.OnItemTouchListener. За всеми подробностями реализации смотрите статью либо смотрите исходники на Github.
#Git #Github

New Year, New GitHub

Хорошие новости - GitHub пересмотрел свои планы и теперь приватные репозитории доступны в бесплатном плане. Меняются при Microsoft взгляды на сервис!
#Kotlin #Contracts

Understanding Kotlin contracts от Marcin Moskala|KtAcademy

В Kotlin 1.3 появился новый экспериментальный функционал - Contracts. Он позволяет вам описать дополнительную информацию для компилятора о работе функции. Аналогичный функционал был уже на уровне аннотаций в Idea для Java. Мартин в статье рассказал о том, как работает этот механизм.
#Library #Debug #Dagger

Developing and Debugging on Android with DevFun от Alex Waters

Как часто в вашем коде бывает код вида:
if(BuildConfig.DEBUG) // Сделать что-то

Избавляться от этого можно разными способами. Я использую возможность размещать код в отдельных Flavor и при помощи Dependency Injection подменяю функционал в зависимости от текущего билда. Решение неудобно в поддержке 😞.

В статье ребята делятся своим решение основанным на аннотациях, кодогенерации и рефлексии. Оно позволяет вам:
👉 Вызывать функции из приложения в любое время из любого места
👉 Вызывать функции с параметрами, введенными во время работы приложения
👉 Предоставляет удобный интерфейс для дебага
👉 Подмена зависимостей Dagger 2
👉 Возможность добавление своих собственных модулей
👉 И МНОГО ВСЕГО ПРОЧЕГО

Самое классное, что ни одна строчка кода не попадет в код продакшен сборки вашего приложения!

Для тех кто любит сразу смотреть сырцы GitHub DevFun - Developer (Fun)ctions👉
#GooglePlay #Subnoscriptions

Google will be turning on the Restore feature for all developers

Google Play имеет возможность восстановления подписок до их окончания - Restore feature. На текущий момент она может быть отключена разработчиком, но с 15 апреля она будет включена для всех по умолчанию.

Google рекомендует всем проверить работу вашего приложения с включенной функцией. В статье вы найдете все рекомендации.
#AOP #Kotlin

Aspect-oriented programming (AOP) vs functions от Roman Elizarov

Сравнение аспектно-ориентированного подхода и функционального для решения задач от папы корутин в. Kotlin 😀
#Library #SQL #Kotlin #Multiplatform

SQLDelight 1.0 - Generates typesafe Kotlin APIs from SQL

Вышла первая стабильная версия библиотеки SQLDelight, которая позволяет вам генерировать API из ваших SQL запросов на Kotlin Multiplatform.

Механизм работы с библиотекой простой:
1️⃣ Подключаем Gradle плагин SQLDelight
2️⃣ Описываем ваши SQL запросы в .sq файлах
3️⃣ Подключаете драйвер для вашей платформы
4️⃣ Используем БД через сгенерированный код

Почему стоит использовать SQLBright:
👉 Чистый Kotlin!
👉 Проверка SQL запросов, схемы и миграций
👉 Поддержка подстветка SQL синтаксиса, рефакторинга и автодополнения в Idea/Android Studio
👉 Поддержка Android, iOS и JVM
👉 Поддержка RxJava
👉 Поддержка Kotlin Multiplatform
👉 Поддержка Android Paging библиотеки
#Android #Fragment #Dialog #Library

Dynamic Dialogs - Improved dialogs and dialog fragments for Android

Удобная библиотека, которая позволяет вам упростить создание диалогов с помощью шаблона Builder. Теперь вам не нужно создавать подклассы для всех диалогов (вы же все диалоги делайте на основе Fragment). Работает как с обычными диалогами, так и DialogFragment.
#Kotlin

Five things you might not know in Kotlin от Piotr Mądry

Все ли вы знаете о Kotlin? В статье рассказывается о:
1️⃣ Pair - создание через to
2️⃣ data класс - destructuring declaration
3️⃣ Spread оператор для vararg аргументов
4️⃣ Sealed классы - Enum на стеройдах
5️⃣ В делегатах скрыта большая сила
6️⃣ Reified типы в inline функциях!

Оставляй голос под постом и узнаем кто крут
#DataBinding #BestPractices

Data Binding — Lessons Learnt от Chris Banes|Google

Библиотека Data Binding предлагает удобный способ для задания данных в UI, но не забывайте о правиле Человека-Паука. В связи с этим рекомендую познакомиться с советами по использованию библиотеки:
👉 Используйте стандартные binding когда это возможно
👉 Кастомные binding должны стараться избегать вызовов перерисовки UI
👉 Будьте внимательны с тем что вы объявляете как переменные
Используете ли вы Android Data Binding библиотеку у себя в проектах?
Final Results
30%
Да
70%
Нет
0%
Что это?
#Distribution #GooglePlay

10 tips to optimize app engagement от Jeni Miles

Ты самый крутой разработчик и можешь сделать крутую архитектуру, написать кучу Unit и Instrumentation тестов настроить все CI. Вы нажимаете "Опубликовать" в Google Play и не видите сумасшедшего использования вашего приложения, то вы становитесь 😞. Но не стоит рано опускать руки - готовьтесь к новой, и скорее всего самой сложной задаче для вашего проекта - его развитию и поддержке. В статье вы найдете советы как развивать ваше приложение после релиза.
#Square #Payments #SDK

Square запустила SDK для платежей в приложение под Android и iOS

Ребята из Square подарили нам множество замечательных Open Source библиотек, а теперь сделали собственное SDK чтобы вы могли проводить платежи прямо внутри вашего приложения. Единственное что вам надо помнить - политику по оплате Google Play.
#LibUpdates

LeakCanary 1.6.3

Вышла новая версия LeakCanary. Она привнесла только багфикс 😀
#UI #CustomView

How to maximize Android’s UI reusability — 5 common mistakes от Carlos Palacin Rubio

Какими свойствами должна обладать Custom View, чтобы быть удобной в использование? Основные принципы:
👉 Читабельным
👉 Тестируемым
👉 Переиспользуемым
👉 Поддерживать предпросмотр в Layout Editor
👉 Не выходить за рамки времени отведенного для отрисовки кадра

В статье вы найдете рекомендации по тому как добиваться этих результатов. Также рекомендую прочитать "Optimizing the View"