Android дайджест #26: Kotlin, векторные анимации, Architecture Components
А также: Android 8.0, аналоговый ввод-вывод в Things, внедрение Instant Apps, работа с Gradle, переезд на RxJava2, работа со шрифтами, платежи в Billing Library, быстродействие, dependency injection и еще много интересного!
Новости и аналитика
Android O APIs are final. Новая версия Android 8.0, API level 26. Помним про изменения в работе с уведомлениями.
The Value of Google I/O, for You and Your Company.
Google Play Services 11.0: Instant apps для всех, улучшение безопасности и работы с геолокацией.
Google Play Billing Library: Developer Preview 1. Упрощение работы с платежами и абстракции поверх Android Interface Definition Language (AIDL).
Android Things
How to build a high five machine with Android Things and Firebase. Социализация в офисе для интровертов.
Android Things: Analog I/O (and PWM, SPI, I²C) Tutorial с Raspberry Pi.
Android Things Console Preview и управление обновлениями over-the-air (OTA).
Kotlin
Android NDK: Interaction of Kotlin and C/C++
What do I hate in Kotlin. Наследие Java, неочевидные операции, отказ от кортежей.
From AutoValue to Kotlin data class. Миграция, проблемы с kotlin-kapt, больше Builders.
Gang of Four Patterns in Kotlin. Сложно представить язык программирования без примеров GoF.
Kotlin’s hidden costs — Benchmarks. Отличная подборка тестов и рекомендаций. Советуют избегать использования varargs, delegates и forEach функций.
Creating multiple constructors for Data classes in Kotlin. Еще одна особенность миграции с Java-проектов.
Почитать/посмотреть/попробовать
Architecture Components: Network awareness using LiveData.
RxJava 1 -> RxJava 2 (Understanding the Changes) от Kaushik Gopal и ответочка на этот пост от Artem Zinnatullin.
Fonts (revisited) — о долгожданных изменениях в шрифтах Android O от UI-эксперта Mark Allison.
ItemDecoration in Android Part 1: Avoid adding dividers to the view layout.
How to speed up your slow Gradle builds — конспект доклада с Google I/O.
Understanding the Gradle Wrapper. Почему wrapper все-таки следует использовать.
Version 25.4 of the Android Support Library: vector animations backport. Рассказывает Nick Butcher.
Alex Lockwood: Introducing Shape Shifter v1.0. Веб-приложение для векторных иконок и анимаций.
Implementing Complex Animations in Android (Full Working Code).
The little secret of android:animateLayoutChanges. Почему автоматическая анимация работает не всегда.
Android Architecture Components by Example. Подборка паттернов и best practices прилагается.
Как крупные проекты внедряют Android Instant Apps: истории Vimeo и BuzzFeed.
Полезные инструменты и библиотеки
Detekt: Static code analysis tool for Kotlin.
Ktlint: Kotlin linter with built-in formatter.
OffsetAnimator: Animations driven by finger movement.
AppIntro: Make a cool intro for your app, like the ones in Google apps.
Koin: Better dependency injection for Android.
Cropiwa: Configurable Custom Crop widget for Android.
IconSwitch: Custom Android Switch widget.
Анонс
25 ноября в Киеве в пятый раз состоится конференция UAMobile. Call For Papers открыт всех желающих.
Какие темы/материалы/ивенты стоит добавить в дайджест — пишите в комментариях, твиттер @sergiizhuk или воспользуйтесь специальной формой.
← Предыдущий выпуск: Android дайджест #25