Android дайджест #17: Nearby, Multi-Window, Instant Run, SOLID

А также: обсуждение анонсов Google I/O, победа Google в патентном споре, анализ приложения с ClassyShark, динамический blur-эффект, программирование на Go, Kotlin и Gradle, защита приложений, GDG DevFest и ещё много интересного.

Новости и аналитика

Google побеждает Oracle в суде после шестилетней тяжбы на миллиарды долларов. Камнем преткновения были 11500 строк java кода в ОС Android.

Доля Android на рынке существенно выросла по всему миру.

Google готовится добавить Raspberry Pi 3 в AOSP, теперь это будет официально поддерживаемое устройство.

Google Nearby: платформа для гиперлокации для Android. Будет доступна как часть Google Play Services, начиная с версии KitKat.

Бум приложений закончился.

Google будет брать только 15% от суммы, которую платит пользователь за подписку на приложение/сервис.

Support Library 23.4.0.

RxAndroid 1.2.0. Улучшена работа с планировщиками.

Архитектура приложений

Designing Offline Application Case Studies. Доклад с Droidcon San Francisco от разработчика из Google.

Retaining Presenter on configuration change with minimal overhead. Находим скрытые возможности в FragmentActivity.

SOLID: Principles for Android Developers. Серия статей от Donn Felker.

Little stories about Android application architecture. 27 страниц печатного текста, всё обо всём, прилагается пример на GitHub.

Шаблон MVP архитектуры для Android Studio.

Google Agera: новый подход к реактивному программированию для Android от команды Google. Комментарий по поводу связи с RxJava. Сравнительный анализ с ReactiveX.

Инструменты разработчика

Как поделиться вашими настройками Android Studio с другими членами команды.

8 ways to analyze your app with ClassyShark. Слайды от Boris Farber — автора приложения.

Мониторинг сетевого трафика при отладке приложений с помощью логирования и внешних прокси.

Строим графики размера APK файла и dexcount в Jenkins.

Автоматизация снятия скриншотов для Play Store и дополнительного тестирования.

10 Things You (Probably) Didn’t Know You Could do in Android Studio.

Уменьшение размера APK с asset minification.

Android-go: пишем нативные (NDK) приложения на языке Go. До продакшен-пригодности еще очень далеко.

Instant Run & JRebel: продолжаем ускорять сборку приложений

Reto Meier рассказывает об Instant Run из первых уст и иллюстрирует разные варианты запуска приложения.

Getting started with JRebel for Android в блоге JRebel.

Долгожданное сравнение функциональности JRebel и Instant Run в блоге JRebel. Несложно догадаться, кто же в этом сравнении победил :)

Оптимизация и быстродействие UI

RenderThread: отдельный поток для выполнения анимаций, который появился в API 21.

Простая и быстрая обработка изображений с RenderScript. Задействуем GPU телефона без работы с OpenGL.

Уменьшаем размер PNG файлов, рассказывает Colt McAnlis.

Как работает VectorDrawable.

Kotlin

Kotlin Post-1.0 Roadmap.

Gradle Meets Kotlin и Kotlin Meets Gradle. Пишем скрипты на Kotlin начиная с Gradle 3.0.

Подборка из 7 полезных фич Kotlin от Dan Kim.

Generics в Kotlin vs. Generics в JAVA: сходства, различия, особенности.

Больше об Android N и новинках с Google I/O

Random Musings on the N Developer Preview 3 от Mark Murphy.

Using ConstraintLayout to design your views: пошаговый учебник от Google.

Готов ли ConstraintLayout к продакшен-проектам и какие есть баги.

Be Careful of Drag-and-Drop on Android N. Drag-and-drop из другого приложения без дополнительных разрешений может привести к непредсказуемым результатам.

The new Firebase Crash Reporting.

Push уведомления в Android с помощью Firebase Cloud Messaging.

Обновлённая документация: Design Principles for Android Wear.

Как приготовить ваши приложения к работе на ChromeOS.

Designing for Multi-Window от Ian Lake.

Multi-Window в Android N: что нужно знать разработчику.

И еще почитать/посмотреть/попробовать

Improving the Security and User Experience of your Google Sign In Implementation.

Async Injection in Dagger 2 with RxJava.

Notes about protecting HTTPS for Android/Java apps.

A beginners guide to an effective Android testing strategy.

Why Is ClassLoader.getResourceAsStream So Slow in Android?

Пример работы с RxJava: конвейерная линия.

GCM Network Manager: уменьшаем расход батареи при работе с сетью.

Исходные коды приложения конференции Facebook F8 2016 на React Native. Детальное описание — в серии статей на makeitopen.com.

AndroidAudit: набор вопросов, которые стоит задать, когда вы принимаете проект у другой команды или фрилансера.

Performance Problems in Libraries and SDKs.

Understanding Android Naming Conventions. Почему и зачем были выбраны именно такие названия для Activity, Fragment, AsyncTask, Context. Настоятельно рекомендуем новичкам.

The absolute minimum Android developers need to know about UX. Серия из 5 статей.

Secure those bits: несколько новых инструментов для защиты данных от команды Android Security.

О выборе правильного Background Scheduler. Рассмотрены AlarmManager, JobScheduler, GCM Network Manager, Sync Adapters и Doze Mode.

Восемь способов сделать memory leak в вашем приложении.

Retrofit 2: Code walkthrough. Что под капотом у новой версии самого популярного HTTP клиента.

The Annotated Programmer. Chet Haase остроумно рассказывает о тех аннотациях, которые иногда хотелось бы использовать каждому разработчику.

Полезные инструменты и библиотеки

BlurView: динамический blur эффект.

VectAlign: инструмент для создания сложных перетекающих анимаций VectorDrawables. Позволяет сделать переход между любой парой SVG изображений.

Android-Job: библиотека для работы с фоновыми задачами от команды Evernote.

Google Flexbox Layout: новый ViewGroup для наилучшего заполнения пространства с динамическими размерами. Концептуально повторяет flexbox из CSS.

Dryrun: устанавливаем open-source приложения или библиотеки прямо из командной строки.

ReDex: Android Bytecode оптимизатор от Facebook.

RxJavaProGuardRules: RxJava настройки для ProGuard в виде библиотеки.

APK patch size estimator.

Google Error Prone: обнаруживаем стандартные ошибки в java-коде на этапе компиляции.

PiracyChecker: защита вашего приложения от реверс-инжиниринга и взлома с помощью Google Play Licensing (LVL), подписи APK и других приёмов.

Анонс

9-10 сентября во Львове состоится GDG DevFest — самая большая в Украине конференция про Android, Web и Сloud технологиии Google. 2 дня, 40 докладчиков, 600+ участников. Early Bird билеты ещё есть в продаже.


Какие темы/материалы стоит добавить в дайджест — пишите в комментариях или твиттер @sergiizhuk.


← Предыдущий выпуск: Android дайджест #16

Похожие статьи:
Наш третій матеріал про стан українського ІТ-ринку через рік повномасштабної війни — про те, як компанії діяли в нових умовах, і їхні...
Наприкінці минулого року ми опитали українських ІТ-фахівців щодо книжок, які вони читають — як вузькопрофільних, так і видань...
Компанія Google анонсувала щорічний захід I/O 2023. Цього року головною темою буде штучний інтелект. Конференція відкриється виступом...
Меня зовут Константин Болотин. Я Project Manager в компании Sigma Software. Я управляю сложным проектом в AdTech-домене, который призван помочь...
IT Education Center объявляет набор на курсы по Администрированию Linux «Начальный уровень». Старт обучения очередных групп —...
Яндекс.Метрика