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
#Kotlin #InlineClass

Inline Classes and Autoboxing in Kotlin от Dave Leeds

Kotlin 1.3 представил новую экспериментальную функциональность - Inline классы. Суть классов сводится к тому, что в Kotlin вы работает с ними как с обычными классами: объявляете функции, свойства; передаете в функции и пр, но при компиляции они разворачиваются и в итоговом коде вставляется оборачиваемый тип.

Inline классы имеет ряд ограничений, но самое важно понимать что есть случаи когда они остаются обычными классами:
👉 Когда Inline класс передается как объект суперкласса или реализуемого интерфейса
👉 Некоторые случае при autoboxing

За всеми подробностями хитростей работы нового типа классов читайте статью.
#Gradle #Kotlin #DSL

Gradle Kotlin DSL converter

Для тех кто хочет мигрировать на Kotlin DSL в Gradle советую обратить внимание на Gradle Kotlin DSL converter. Это скрипт, написанный на Kotlin который выполняет базовые шаги миграции. Результат его работы вам еще придется доделывать, но он уже помогает со многими аспектами миграции.
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.