И еще один доклад с прошедшего Google I/O. Авторы продолжают делиться новыми фичами в Constraint Layout - рассказывают о своеобразных контейнерах для вьюх - Flow и Virtual layout, в очередной раз затрагивают тему Motion Layout и обещают за пару месяцев выпустить в альфа версию дизайнер-превью для анимаций в Android Studio.
https://www.youtube.com/watch?v=29gLA90m6Gk
https://www.youtube.com/watch?v=29gLA90m6Gk
YouTube
What's new in ConstraintLayout (Google I/O'19)
Learn the capabilities of ConstraintLayout, a popular library for UI development on Android, which addresses common pitfalls of and solutions to UI patterns, performance aspects, integrating motion, and how to best take advantage of the library in your own…
Появился сайт с документацией по новой ОС от Google - Fuchsia. Есть небольшой обзор системы и описание ядра Zircon.
https://fuchsia.dev/
https://fuchsia.dev/
Интересный сайт, где в одном удобно собраны ссылки на инструменты, библиотеки, проекты, книги, курсы по Kotlin.
https://kotlin.link/
https://kotlin.link/
Исследование современной банковской малвари под Android. В общем и целом, схема достаточно стандартная, но вот идея с автокликом интересная - до этого не приходилось сталкиваться.
https://habr.com/en/post/459858/
https://habr.com/en/post/459858/
Занимательный тред на stackoverflow о не самых известных структурах данных. Каждый найдет для себя что-то новое.
https://stackoverflow.com/questions/500607/what-are-the-lesser-known-but-useful-data-structures
https://stackoverflow.com/questions/500607/what-are-the-lesser-known-but-useful-data-structures
Stack Overflow
What are the lesser known but useful data structures?
There are some data structures around that are really useful but are unknown to most programmers. Which ones are they?
Everybody knows about linked lists, binary trees, and hashes, but what about ...
Everybody knows about linked lists, binary trees, and hashes, but what about ...
Рекомендации при реализации архитектуры MVVM на основе Architecture Components.
https://android.jlelse.eu/mvvm-dos-and-don-ts-5950d6f347d4
https://android.jlelse.eu/mvvm-dos-and-don-ts-5950d6f347d4
Medium
MVVM Do’s and Don’ts
Some ground rules to follow while using MVVM Architecture.
Интересный подход для реализации навигации в многомодульном Android-приложении.
https://overflow.buffer.com/2019/07/30/library-module-navigation-in-android-applications/
https://overflow.buffer.com/2019/07/30/library-module-navigation-in-android-applications/
Автор рассматривает преимущества и недостатки различных подходов для получения данных внутри ViewModel.
https://proandroiddev.com/when-to-load-data-in-viewmodels-ad9616940da7
https://proandroiddev.com/when-to-load-data-in-viewmodels-ad9616940da7
Medium
When to load data in ViewModels
Recently I had a surprisingly long discussion on an ostensibly easy question. Where in our code should we actually trigger the loading of…
Опубликован исходный код приложения Google I/O 19. Google пытается показать людям лучшие практики в использовании Android Architecture Components. Изучить определенно стоит.
https://github.com/google/iosched
https://github.com/google/iosched
GitHub
GitHub - google/iosched: The Google I/O Android App
The Google I/O Android App. Contribute to google/iosched development by creating an account on GitHub.
Как же не хватало еще одно библиотеки для загрузки изображений. Вот она - Coil. (Жаль, что не Koil)
Киллер-фичи:
- реализована на Kotlin,
- на корутинах,
- относительно малое количество строк кода,
- не использует annotation processing,
- dynamic image sampling.
https://coil-kt.github.io/coil/
https://github.com/coil-kt/coil/
Киллер-фичи:
- реализована на Kotlin,
- на корутинах,
- относительно малое количество строк кода,
- не использует annotation processing,
- dynamic image sampling.
https://coil-kt.github.io/coil/
https://github.com/coil-kt/coil/
coil-kt.github.io
An image loading library for Android backed by Kotlin Coroutines
Вышла стабильная Android Studio 3.5.
Как заверяют разработчики было поправлено около 600 багов, 50 утечек памяти, 20 зависаний. Сколько утечек памяти было добавлено почему-то не сообщается.
Некоторые особенности:
- Instant Run убрали, ему на замену Apply Changes
- IDE стала давать больше рекомендаций о необходимости добавить память или выключить антивирус
- улучшена инкрементальная сборка
- правки в Layout Editor
- наконец-таки добавили возможность использования нескольких версий NDK (!!!)
Полная информация тут:
https://android-developers.googleblog.com/2019/08/android-studio-35-project-marble-goes.html
https://www.youtube.com/watch?v=OJ3K90FpQ6A
Как заверяют разработчики было поправлено около 600 багов, 50 утечек памяти, 20 зависаний. Сколько утечек памяти было добавлено почему-то не сообщается.
Некоторые особенности:
- Instant Run убрали, ему на замену Apply Changes
- IDE стала давать больше рекомендаций о необходимости добавить память или выключить антивирус
- улучшена инкрементальная сборка
- правки в Layout Editor
- наконец-таки добавили возможность использования нескольких версий NDK (!!!)
Полная информация тут:
https://android-developers.googleblog.com/2019/08/android-studio-35-project-marble-goes.html
https://www.youtube.com/watch?v=OJ3K90FpQ6A
Android Developers Blog
Android Studio 3.5: Project Marble goes into stable
Posted by Jamal Eason , Product Manager, Android Have you ever wished that Android Studio was faster, more performant, and more memo...
Автор рассказывает, как с помощью ProcessLifecycleOwner можно достаточно легко реализовать механизм, вычисляющий продолжительность сессии приложения.
https://proandroiddev.com/android-processlifecycleowner-by-example-2f965061b9da
https://proandroiddev.com/android-processlifecycleowner-by-example-2f965061b9da
Medium
Android ProcessLifecycleOwner by example
The ProcessLifecycleOwner is an extension for getting information about lifecycle for the whole application process. Let’s explore it.
Мигающий layout - это определенно то, чего не хватает в современном Android-приложении. Достаточно забавная пасхалка от Romain Guy.
https://medium.com/@anoopss/you-thought-you-knew-android-e46a556d0773
https://medium.com/@anoopss/you-thought-you-knew-android-e46a556d0773
Medium
You thought you knew Android
Did you know that Android has a ViewGroup called blink? Surprised right? Same was my expression when I first found out about it.
Обзор библиотеки для внедрения зависимостей Koin.
Простота использования, удобство DSL, поддержка из коробки ViewModel из AAC - основные особенности, на которые обращает внимание автор.
Также присутствует сравнение с Dagger и обзор фишек, появившихся в Koin 2.0.
https://www.youtube.com/watch?v=chCsNkjotfc
Простота использования, удобство DSL, поддержка из коробки ViewModel из AAC - основные особенности, на которые обращает внимание автор.
Также присутствует сравнение с Dagger и обзор фишек, появившихся в Koin 2.0.
https://www.youtube.com/watch?v=chCsNkjotfc
YouTube
Dependency injection from zero to hero with Koin by Arnaud Giuliani EN
This session was given at Paris Android Makers 2019 by Arnaud Giuliani.
More info: http://androidmakers.fr/schedule/?sessionId=JOO-6049
Koin (https://insert-koin.io) is a pragmatic dependency injection framework for Kotlin/Android developers. Let's see…
More info: http://androidmakers.fr/schedule/?sessionId=JOO-6049
Koin (https://insert-koin.io) is a pragmatic dependency injection framework for Kotlin/Android developers. Let's see…
Достаточно удобный ресурс, где в одном месте можно посмотреть актуальную версию и релиз-ноуты AndroidX библиотек.
https://androidx.tech/
https://androidx.tech/
Троян в приложении, которое скачали более 100 миллионов раз? Почему бы и нет. Именно на этом попался CamScanner – Phone PDF creator.
Шифрование и удаленная загрузка модулей - схема знакомая и стандартная.
https://securelist.com/dropper-in-google-play/92496/
Шифрование и удаленная загрузка модулей - схема знакомая и стандартная.
https://securelist.com/dropper-in-google-play/92496/
Securelist
An advertising dropper in Google Play
Recently, the popular CamScanner – Phone PDF creator app caught our attention. After analyzing the app, we saw that the developer added an advertising library to it that contains a malicious dropper component.
Автор рассматривает режимы наложения одного изображения на другое с помощью PorterDuff.Mode. Статья насыщена большим количеством примеров.
https://medium.com/better-programming/practical-image-porterduff-mode-usage-in-android-3b4b5d2e8f5f
https://medium.com/better-programming/practical-image-porterduff-mode-usage-in-android-3b4b5d2e8f5f
Medium
Practical Image PorterDuff Mode Usage in Android
Blending two images to produce the desired image output using PorterDuff