Size: a a a

Android Broadcast

2019 September 23
Android Broadcast
Сегодня 11 лет с выпуска первого Android устройства HTC G1. Дисплей у телефона был всего 3.2 дюйма, 192 Мб оперативной памяти и простенький процессор  Qualcomm MSM7201A 528 MHz ARM 11 + Adreno 130. Сейчас в мире уже 2.5 миллиарда устройств на Android.
источник
2019 September 24
Android Broadcast
#Arhitecture #Moxy

Don’t think about rotation of the screen. Moxy fixes the problem.

Разбор библиотеки Moxy и как с помощью ViewState она позволяет легко сохранять состояние Activity при изменение конфигурации
источник
Android Broadcast
#Kotlin #Detekt #SealedClass #CustomRule

Kotlin: when statement, when expression… oh my! or How we created our custom Detekt rule

Kotlin Sealed Classes - это интересная фича языка Kotlin, которая расширяет дает ограничение в иерархии наследования.

Если иерархия ограниченная и все подклассы известны, то это практически enum и значит в when или if..else мы можем перебрать все варианты без добавления else. Но это работает не всегда...

В статье рассматривается как это работает, и как ребята написали собственное правило для Detekt, чтобы не допустить ошибки.
источник
Android Broadcast
#Crashlytics #Firebase #BestPractices

How to set up Crashlytics alerting to monitor app stability

Firebase Crashlytics - это стандарт де-факто для трекинга крешей в ваших приложениях. В статье создатели сервиса рассказывают про возможности настройки уведомлений о крешах, регрессий стабильности и интеграции уведомлений с разными каналами: Slack, Jira и др.
источник
Android Broadcast
#Architecture #MVP

Почему вам стоит выкинуть MVP из своих проектов

Выбор архитектуры для проекты всегда сложный вопрос. Часто это мода технологий (Architecture Components + MVVM) или устоявшиеся традиции в команде, компании (MVP, MVI и др.)

В статье сравниваются MVP, MVVM, MVI и как решаются проблемы одной архитектуры в другом и что не так с MVP
источник
2019 September 25
Android Broadcast
#Test #Automation

Kaspresso: фреймворк для автотестирования, который вы ждали

Союз ребят из Лаборатории Касперского, HeadHunter и Авито создали фреймворк для автотестирование, который сделает ваши отношения с автотестами лучше и плодотворнее.

Чем же отличился Kaspresso:
👉 Возможность использования adb, а значит можно настраивать систему для теста
👉 Создание скриншотов
👉 Красивый DSL
👉 Решения flaky тестов из коробки
👉 Легкая интеграция если у вы используете Kakao
👉 Гибкость и легкая настраиваемость

В статье рассказывается зачем был нужен еще один инструмент для написания автотестов, чем не угодил Espresso, Kakao, нужен ли DSL для написания тестов и пр.
источник
Android Broadcast
#GooglePlay #Publishing

Как быть опубликованным в Google Play в 2019

Рынок мобильных приложений - это огромные деньги (оценка в 120 млрд на 2019 год). Много конкуренции и стать успешным становится все труднее. Также усложнят жизнь GDPR

В статье вы найдете рекомендации по:
👉 Интеграции AdMob и как на это повлиял GDPR
👉 Возрастные ограничения
👉 Политика конфиденциальности
👉 Copyright
источник
Android Broadcast
#RxJava #Coroutines

RxJava VS. Coroutines In Two Use Cases

Сравнение RxJava и Kotlin Coroutines в боевых задачах
источник
2019 September 26
Android Broadcast
#Firebase

What's new at Firebase Summit 2019

Сегодня в Мадриде проходит Firebase Summit на котором были представлены обновления:
👉 Firebase Extensions - готовые решения для выполнения распространенных задач: изменения размера картинок, укорачивание ссылок и пр.
👉 Улучшения в Firebase Emulator Suite
👉 Представлена Firebase App Distribution - это замена Fabric Beta, которая позволяет распространять предрелизные версии вашего приложения
👉 Firebase Analytics теперь доступен для Web

Что в итоге? Появилась полная альтернатива всем сервисам из Fabric и теперь можно делать полную миграцию.
источник
Android Broadcast
источник
Android Broadcast
Совсем недавно ребята из Android Dev Podcast организовали продажу своих фирменных маек. Но вот незадача, раздавать они их будут только на российских конференциях. Я решил устранить это досадную несправедливость - Android Broadcast организовал возможность получить футболки в Беларуси.

Цена одной футболки: 40 бел. рублей
Сбор заказов будет проходить до 7 октября 00:00.

Футболку можно будет заказать только по полной предоплате. Все подробности вы узнаете из письма после окончания приема заказов: где можно получить, когда будет заказ и как можно получить.
источник
Android Broadcast
#DependencyInjection #Koin #Modularization

Setting Up Android Modules with Koin

Dependency Injection - стандарт для современных приложений и как самое популярное решение для этого Dagger 2 на Android. С некотор пор я предпочитаю Koin, так как она более простая и pure Kotlin 😍.

Пригоден ли Koin для модуляризации проект? Сможет ли он поддерживать Dynamic Features? В статье рассматривается как это сделать
источник
Android Broadcast
#Kotlin #Multiplatform

Переиспользование кода между платформами - горячая тема в мобильной разработке, так как всем сейчас необходимо приложение под популярные мобильные ОС: Android и iOS. Уже было много попыток: Apache Cordova, Xamarin, React Native, Flutter, Ionic, PhoneGap

Kotlin/Multiplatform взглянул на эту тему по новому - разработчики не пишут общий код, которые интерпретируется на конечной платформе с помощью виртуальной машины или запускается в браузере, а вы пишите единый Kotlin код, который потом компилируется в нативный код для конечной платформы. Наиболее близкое к этому решения - Flutter.

Ребята из IceRock запустили канал по мобильной разработке на с использованием Kotlin Multiplatform - @kotlinmpp
источник
2019 September 27
Android Broadcast
#Span #Text #HTML

Making Nested Lists with Android Spannables in Kotlin

Span - это мощный инструмент для форматирования текста в Android. С ним можно и ссылку в тексте сделать или поменять часть стиля текста.

В статье разбирается как сделать многоуровневые bullet в тексте, реализовать Html.TagHandler
источник
Android Broadcast
#Conference #Moscow #Promo

Mobius Москва 2019

Вы можете купить билет со скидкой предоставленной специально для Android Broadcast - используйте промокод mobius19mskAndroidBpc и купите билет здесь.

7-8 декабря в Москве пройдет конференция о мобильных технологиях Mobius. Спикеры из компаний LG, Яндекс, Tinkoff, Сбербанк, Вконтакте, JFrog, Amazon, Badoo, Lyft, Mail.Ru расскажут о:
👉 Лучших практиках тестирования
👉 Эффективный UI с Litho
👉 Как создать собственное правило для Android Lint
👉 Лучшие практики Kotlin
👉 Устройство шрифтов
👉 Как защитить ваше приложение
👉 Создание гибких и расширяемых архитектур
👉 Разбор в зоопарке Android систем: Things, Auto, Automotive, Wear, TV и классический вариант для телефонов
👉 Как продвинуть ваше приложение в Google Play и какие пути есть чтобы понравиться поддержке этого сервиса
источник
Android Broadcast
#Architecture #MVI #PureKotlin

MVIDroid - MVIDroid is a framework written 100% in Kotlin that brings MVI pattern to Android

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

Сам я никогда не был фанатом MVI, но архитектура довольная интересная. MVIDroid - это хороший пример реализации это архитектуры на чистом Kotlin без лишнего обвеса и оптимизированная под Android.
источник
Android Broadcast
#Architecture #MVI #PureKotlin

Debugging with MVIDroid

Помимо всего библиотека имеет обширные возможности по отладке: логирование, подмена MviStore через Factory.

Также библиотека имеет функцию Time Travel - сохранение всех событий, благодаря чему вы может делать различные интересные вещи:
👉  Переключение между состояниями вперед или назад
👉  Просмотр всех событий
👉  Просмотр информации о любом событии
👉  Возможность вызова любого события снова
👉  Поставить breakpoint для любого события
👉  Возможность сериализации/десериализации для передачи событий между устройства
👉  Remote debug
источник
2019 September 30
Android Broadcast
#Firebase #FirebaseAppDistribution #Fastlane

Firebase App Distribution, Fastlane, Docker, Bitbucket Pipelines, Telegram, and all that jazz

На днях был представлен публично Firebase App Distribution, который упрощает доставку сборок вашего приложения тестерам.

В статье рассматривается как настроить новый способ доставки сборок на вашем CI с помощью Docker и Fastlane
источник
Android Broadcast
#Gradle #AndroidGradlePugin

Трансформация кода в Android

Писать boilerplate никто не любит. Сначала это упростили написанием библиотек, потом была рефлексия, затем Annotation Processor и наконец генерация кода с помощью Gradle плагина. Например, с помощью этого работает Android Data Binding.

В статье рассматривается как с помощь Transfrom API написать Gradle плагин, который сохраняет указанные данные в состояние Activity и какие эффекты это несет на время сборки
источник
Android Broadcast
#Architecture #CleanArchitecture

Multiple ways of defining Clean Architecture layers

Хорошая архитектура - это ключевой элемент для построения приложения которое может делиться на модули, расширяться, упрощать поддержку, обеспечивать тестирование и др.

Чтобы достичь этого мы используем такие подходы как Clean Architecture (CA), S.O.L.I.D., Dependency Injection

В статье рассматриваются различные подходы какие используются для реализации CA:
1️⃣ CA слов в одно модуле
2️⃣ Один CA слой - один модуль
3️⃣ CA слои в feature модуле
4️⃣ CA слои в отдельных модулях для каждой feature
Также проводится сравнение решений
источник