We Love Android
623 subscribers
259 photos
26 videos
4 files
630 links
Новости из мира Android-разработки
Download Telegram
Первая статья из цикла от Nick Butcher, в которой он пытается внести ясность между тем, когда необходимо использовать темы - Theme, а когда стили - Style для вьюшек в своем Android приложении.

https://medium.com/androiddevelopers/android-styling-themes-vs-styles-ebe05f917578
Достаточно вводная статья, в которой автор рассматривает как же лучше оформлять всякие утилитные статические функции, если пишешь на Kotlin.
Фактически все сводится к выбору одного из следующих вариантов:
- использование object aka singleton
- использование companion objects
- использование package-level функций.

https://proandroiddev.com/utils-class-in-kotlin-387a09b8d495
FileBox - библиотека, позволяющая упростить асинхронную загрузку файлов по заданному URL.

Как утверждают авторы, поддерживается умное кеширование, шифрование файлов, множественная загрузка.

https://github.com/lyrebirdstudio/filebox
Достаточно рано опубликовали Android 11 Developer Preview. Вот некоторые интересные фичи:
- обновление API для работы с 5G сетями,
- новое API для работы с круглыми экранами и экранами с вырезами для камер,
- улучшение Bubble API в случае использования для мессенджеров,
- Neural Networks API 1.3,
- One-time permission,
- Scoped storage,
- новый механизм динамической загрузки ресурсов с помощью Resource Loader,
- шаринг крупных данных с помощью BlobstoreManager.

https://android-developers.googleblog.com/2020/02/Android-11-developer-preview.html
Начиная с Android Studio 4.0, у разработчиков, использующих NDK, появится возможность подключать нативные зависимости простым способом, по аналогии с тем, как это сейчас делается с AAR.

В данный момент список доступных библиотек достаточно мал.

https://android-developers.googleblog.com/2020/02/native-dependencies-in-android-studio-40.html
Базовая статья, рассказывающая о том, как использовать OkHttp Interceptors в своем Android приложении. Автор отмечает разницу между Application и Network интерсепторами и приводит характерные примеры.

https://blog.mindorks.com/okhttp-interceptor-making-the-most-of-it
Unearthed - небольшая библиотека, которая позволяет фиксировать ситуации, при которых ваше Android приложение было восстановлено после смерти процесса (уничтожения системой).

https://github.com/hannesstruss/unearthed
В данной статье автор рассказывает о том, какими способами можно поддержать отмену запущенной корутины в Kotlin. Фактически рассматриваются 3 способа:
- добавление отдельной suspend функции,
- проверка флага isActive,
- вызов функции yield.

https://zsmb.co/coroutine-cancellation-101/
Автор делится своим составленным списком из 30 лучших приложений и библиотек из мира Android разработки за 2019 год.

https://medium.com/better-programming/30-best-android-libraries-and-projects-of-2019-a1e35124f110
Автор рассказывает о том, как можно использовать контракты в Kotlin, для того, чтобы сообщить дополнительную информацию компилятору о гарантируемых свойствах объекта.

https://medium.com/@akperkins1/smart-casts-via-assertions-kotlin-contracts-fd737a92013b
Автор пытается разобраться в плюсах и минусах Enum'ов и Sealed классов, а также дает советы по использованию того или иного подхода в различных ситуациях.

https://blog.kotlin-academy.com/enum-vs-sealed-class-which-one-to-choose-dc92ce7a4df5
В статье автор рассматривает изменения в Activity Result API, а именно замену startActivityForResult на новый механизм, построенный на базе ActivityResultContract. Для основных действий по типу получения фотографии или запроса рантайм разрешений разработчики уже добавили базовые контракты.

https://medium.com/@miloszlewandowski/a-first-look-at-androidx-activity-result-apis-3dc0f887de09
В статье рассказывается о том, что вообще такое desugaring, какие изменения принес D8 dex compiler и как с помощью опции coreLibraryDesugaring добиться использования современного Java API на старых версиях Android.

https://blog.stylingandroid.com/d8-desugaring/
Авторы рассказывают о том, как перешли от использования WebView к Chrome Custom Tabs, описывают плюсы и минусы данного подхода.

https://blog.plaid.com/securing-webviews-with-chrome-custom-tabs/
Автор рассказывает о том, что решение многопоточных задач с использованием подходов, построенных на RxJava и корутинах, может быть излишним и зачастую можно получить более простой результат, используя стандартные Java средства для многопоточного программирования.

https://www.techyourchance.com/concurrency-frameworks-overrated-android/
В статье рассказывается о том, как можно кастомизировать Bottom Sheet в своем приложении.

https://bryanherbst.com/2020/05/04/bottom-sheet-corners/
Подборка инструментов и подходов, используемых в современной Android разработке, начиная от прототипирования, заканчивая отладкой готового продукта.

https://whimsical.com/Ldt6gUncijq3FAmLS4TVYx