#Permissions #Location
Evolution of location access on Android
Последние пару лет изменения в получении доступа к местоположению разработчикам приложения значительно усложняется. Android 11 также продолжает эту тенденцию.
Автор статьи решил сделать обзор изменений:
👉 Android 8 и разграничения доступа к местоположению между активными (foreground) и фоновыми (background) приложениями
👉 Android 9 и ужесточение практик
👉 Android 10 и отдельно разрешения для получения местоположения в фоне
👉 Android 11 и одноразовое получение доступа к местоположению, а также изменение предоставления разрешения доступа к местоположению при работе приложений в фоне
Помимо всего этого в Google Play ввели ревью приложений на то, чтобы разрешение для доступа к местоположению не использовалось если вы не сможете убедить ревьюверов то, что оно нужно вам. Подробнее читайте здесь
Evolution of location access on Android
Последние пару лет изменения в получении доступа к местоположению разработчикам приложения значительно усложняется. Android 11 также продолжает эту тенденцию.
Автор статьи решил сделать обзор изменений:
👉 Android 8 и разграничения доступа к местоположению между активными (foreground) и фоновыми (background) приложениями
👉 Android 9 и ужесточение практик
👉 Android 10 и отдельно разрешения для получения местоположения в фоне
👉 Android 11 и одноразовое получение доступа к местоположению, а также изменение предоставления разрешения доступа к местоположению при работе приложений в фоне
Помимо всего этого в Google Play ввели ревью приложений на то, чтобы разрешение для доступа к местоположению не использовалось если вы не сможете убедить ревьюверов то, что оно нужно вам. Подробнее читайте здесь
Medium
Evolution of location access on Android
In Sep 2008, Android provided developers with the ability to use GPS location with app users’ permission as part of the first Android 1…
#Gradle
Module Graph Assert - Gradle plugin to keep your modules graph healthy and lean
Gradle плагин, который поможет вам визуализировать граф зависимостей модулей в вашем проекте и позволит проанализировать его визуально.
Module Graph Assert - Gradle plugin to keep your modules graph healthy and lean
Gradle плагин, который поможет вам визуализировать граф зависимостей модулей в вашем проекте и позволит проанализировать его визуально.
#DependencyInjection
Unboxing Koin 2.1
Не так давно вышла следующая версия популярного DI фреймворка на чистом Kotlin - Koin 2.1.
Улучшения в новой версии:
🚀 Изменения во внутренней архитектуре и лучшая производительность
👉 Изменения в работе со Scope
👉 Koin Gradle plugin — проверка графа во время компиляции
👉 Inject зависимостей через setter (experimental)
👉 Новые JUnit правила, которые избавляют от зависимости на какую либо mock библиотеку
👉 Лучшая совместимость с Ktor
Обновления для Android:
👉 Android Lifecycle Scopes
👉 Поддержка SavedState для ViewModel
👉 Поддержка inject в конструкторы Fragment
Следующая версия будет 3.0, которая принесет поддержку Kotlin MPP 🔥🔥🔥
Unboxing Koin 2.1
Не так давно вышла следующая версия популярного DI фреймворка на чистом Kotlin - Koin 2.1.
Улучшения в новой версии:
🚀 Изменения во внутренней архитектуре и лучшая производительность
👉 Изменения в работе со Scope
👉 Koin Gradle plugin — проверка графа во время компиляции
👉 Inject зависимостей через setter (experimental)
👉 Новые JUnit правила, которые избавляют от зависимости на какую либо mock библиотеку
👉 Лучшая совместимость с Ktor
Обновления для Android:
👉 Android Lifecycle Scopes
👉 Поддержка SavedState для ViewModel
👉 Поддержка inject в конструкторы Fragment
Следующая версия будет 3.0, которая принесет поддержку Kotlin MPP 🔥🔥🔥
Medium
Unboxing Koin 2.1 📦 🎉
What’s new for Koin 2.1?
#Kotlin #Coroutines #UnderTheHood
The suspend modifier — Under the hood
Текстовая версия выпущенного ранее ролика о том, как работает ключевое слово
The suspend modifier — Under the hood
Текстовая версия выпущенного ранее ролика о том, как работает ключевое слово
suspend
в Kotlin.Medium
The suspend modifier — under the hood
Kotlin Vocabulary: Coroutines
#Podcast #Automation
Android Broadcast #10: "Kaspresso" с Евгением Мацюком и Егором Курниковым
Всем мы знаем что тесты писать нужно, но делают это не так много людей в проектах. Почему? Это считают сложным и дорогим. Разработчики Kaspresso уверены, что так быть не должно и сделали библиотеку, которая упрощает написание автотестов. Они пришли в гости и рассказали о Kaspresso.
Гости:
👨✈️Евгений Мацюк, Software Expert в Kaspersky Lab
👨🔧Егор Курников, Android разработчик в Яндекс
Полезные ссылки
💬Telegram группа обсуждения Kaspresso и Adb Server (RU)
🧰Kaspresso Github
📚Kaspresso Wiki
🔨Kakao
⚒️Espresso
Записи докладов по Kaspresso:
📺Воркшоп по автотестам от Kaspersky
📺Единственное, что вам нужно для UI-тестирования
Спасибо Александру Марцинкевичу за помощь в подготовке выпуска
Android Broadcast #10: "Kaspresso" с Евгением Мацюком и Егором Курниковым
Всем мы знаем что тесты писать нужно, но делают это не так много людей в проектах. Почему? Это считают сложным и дорогим. Разработчики Kaspresso уверены, что так быть не должно и сделали библиотеку, которая упрощает написание автотестов. Они пришли в гости и рассказали о Kaspresso.
Гости:
👨✈️Евгений Мацюк, Software Expert в Kaspersky Lab
👨🔧Егор Курников, Android разработчик в Яндекс
Полезные ссылки
💬Telegram группа обсуждения Kaspresso и Adb Server (RU)
🧰Kaspresso Github
📚Kaspresso Wiki
🔨Kakao
⚒️Espresso
Записи докладов по Kaspresso:
📺Воркшоп по автотестам от Kaspersky
📺Единственное, что вам нужно для UI-тестирования
Спасибо Александру Марцинкевичу за помощь в подготовке выпуска
YouTube
"Kaspresso" с Евгением Мацюком и Егором Курниковым
Всем мы знаем что тесты писать нужно, но делают это не так много людей в проектах. Почему? Это считают сложным и дорогим. Разработчики Kaspresso уверены, что так быть не должно и сделали библиотеку, которая упрощает написание автотестов. Они пришли в гости…
#Emulator
Run ARM apps on the Android Emulator
В современном мире, чтобы нормально работать с приложением на эмуляторе, то необходимо собирать сборку под x86 и использовать Intel based эмулятор.
Но что если вам нужно протестировать именно ARM сборку? ARM эмулятор - имеет очень низкую производительность на Android. Приходилось использовать реальные устройства.
x86 эмулятор в Android 11 стал поддерживать выполнение ARM инструкций, транслируя их в x86.
Run ARM apps on the Android Emulator
В современном мире, чтобы нормально работать с приложением на эмуляторе, то необходимо собирать сборку под x86 и использовать Intel based эмулятор.
Но что если вам нужно протестировать именно ARM сборку? ARM эмулятор - имеет очень низкую производительность на Android. Приходилось использовать реальные устройства.
x86 эмулятор в Android 11 стал поддерживать выполнение ARM инструкций, транслируя их в x86.
Android Developers Blog
Run ARM apps on the Android Emulator
Posted by Michael Hazard As part of the Android 11 developer preview we’ve released Android 11 system images , which are capable of ex...
This media is not supported in your browser
VIEW IN TELEGRAM
Новый эмулятор Android 11 vs старый
Стрим "Как устроен Android Broadcast"
Больше года уже проекту "Android Broadcast" и он успел собрать несколько тысяч аудитории на разных платформах: Telegram канал, подкасты и YouTube канал.
Хочу рассказать о том как устроен проект, как отбирается контент, как выдерживается нагрузка и самое главное - ответить на ваши вопросы. Касательно всего что вам интересно: улучшения, планы, команды, донатов и прочего
1 апреля (и это не шутка), среда, 19.00 (время московское)
Больше года уже проекту "Android Broadcast" и он успел собрать несколько тысяч аудитории на разных платформах: Telegram канал, подкасты и YouTube канал.
Хочу рассказать о том как устроен проект, как отбирается контент, как выдерживается нагрузка и самое главное - ответить на ваши вопросы. Касательно всего что вам интересно: улучшения, планы, команды, донатов и прочего
1 апреля (и это не шутка), среда, 19.00 (время московское)
#Coroutines #Sample #AndroidAcademy
Приложение от Android Academy Израиль с примером использования новомодных технологий:
👉 Kotlin
👉 Coroutines & Flow
👉 Koin
👉 Arch Components
Приложение от Android Academy Израиль с примером использования новомодных технологий:
👉 Kotlin
👉 Coroutines & Flow
👉 Koin
👉 Arch Components
#Firebase #KTX
Firebase Kotlin Extensions are out of Beta!
KTX расширения для Firebase вышли из Beta и теперь строго рекомендуются для всех, кто использует Kotlin и Firebase в своих Android проектах
Документация по всем KTX расширениям
Доступные Firebase KTX библиотеки:
👉
👉
👉
👉
👉
👉
👉
👉
👉
Firebase Kotlin Extensions are out of Beta!
KTX расширения для Firebase вышли из Beta и теперь строго рекомендуются для всех, кто использует Kotlin и Firebase в своих Android проектах
Документация по всем KTX расширениям
Доступные Firebase KTX библиотеки:
👉
firebase-common-ktx
👉
firebase-config-ktx
👉
firebase-database-ktx
👉
firebase-dynamic-links-ktx
👉
firebase-firestore-ktx
👉
firebase-functions-ktx
👉
firebase-inappmessaging-ktx
👉
firebase-inappmessaging-display-ktx
👉
firebase-storage-ktx
#News
О Android Broadcast
Собрал всю информацию о проекте в одном месте и добавил ее в описание каналов и чатиков.
О Android Broadcast
Собрал всю информацию о проекте в одном месте и добавил ее в описание каналов и чатиков.
Telegraph
Android Broadcast
Android Broadcast - это проект, призванный распространять знания о современной Android разработке, Kotlin и связанных с ними технологий. "Знания должны быть бесплатными" - это девиз проекта. Проект включает в себя: Telegram канал с подборкой лучших новостей…
#Testing #Mock
Mocking is not practical — Use fakes
Чтобы подменить работу объектов в тестах разработчики зачастую прибегают к мокированию объектов. Альтернативой мокированию выступают stub и fake объекты.
Автор приводит свои доводы на счет замены моков и почему они лучше
Mocking is not practical — Use fakes
Чтобы подменить работу объектов в тестах разработчики зачастую прибегают к мокированию объектов. Альтернативой мокированию выступают stub и fake объекты.
Автор приводит свои доводы на счет замены моков и почему они лучше
Medium
Mocking is not practical — Use fakes
This article talks about the benefits fakes provide over mocks in testing software. Fakes lead to better API and readable/robust tests.
#Accessibility #UI
Accessibility of text over random background colors
Рассказ о том как перекрашивать текст в зависимости от фонового изображения, чтобы пользователь всегда мог легко прочитать информацию.
Accessibility of text over random background colors
Рассказ о том как перекрашивать текст в зависимости от фонового изображения, чтобы пользователь всегда мог легко прочитать информацию.
Medium
Accessibility of text over random background colors
Investigating issues which might result in poor accessibility with text drawn over generic background color
#Android11 #WindowInstets
Android 11: WindowInsets
В Android 11 DP2 появилось новое более удобное API для работы с WindowInsets. Вместо int флагов теперь надо использовать различные типы WindowInsets.
Работа над переносом этого API в AndroidX ведутся, но точно не будет доступно до финального релиза Android 11.
Android 11: WindowInsets
В Android 11 DP2 появилось новое более удобное API для работы с WindowInsets. Вместо int флагов теперь надо использовать различные типы WindowInsets.
Работа над переносом этого API в AndroidX ведутся, но точно не будет доступно до финального релиза Android 11.
Android Broadcast
Исследование российских команд мобильной разработки, 2020 Егор Толстой проводит ежегодное исследование о состоянии мобильной разработки. Хоть в названии и 2020, но ответы надо дать за прошедший 2019 год. Прохождение опроса не займёт больше 10 минут. Результаты…
Остается всего день до окончания опроса. Пройдите по ссылке, чтобы оставить свой отзыв и след в истории
Также не забудьте проголосовать за Android Broadcast. Это очень важно для проекта.
Также не забудьте проголосовать за Android Broadcast. Это очень важно для проекта.
Google Docs
Исследование российских команд мобильной разработки, 2020
Ежегодный опрос про состояние отечественного рынка мобильной разработки. Оценку даем за прошедший год (2019).
Задать вопросы можно в Telegram: @etolstoy
Отчет за 2019: https://bit.ly/2vokzjj
Отчет за 2018: http://bit.ly/2RTaCEV
Отчет за 2017: http://bit.ly/2Mv669o
Задать вопросы можно в Telegram: @etolstoy
Отчет за 2019: https://bit.ly/2vokzjj
Отчет за 2018: http://bit.ly/2RTaCEV
Отчет за 2017: http://bit.ly/2Mv669o
#Kotlin #NullSafety
No more NPE: Converting Java to Kotlin safely
Для тех кто не успел мигрировать код с Java на Kotlin или делает это постепенно, а может и вовсе имеет legacy код на Java, о которого не уйти, то рекомендую вам ознакомиться со статьей.
Автор рассказывает как правильно подготовить ваш код для совместимости с Kotlin, конвертации его и аннотирования полученного кода для максимальной совместимости на уровне байт-кода с исходной версией в Java.
No more NPE: Converting Java to Kotlin safely
Для тех кто не успел мигрировать код с Java на Kotlin или делает это постепенно, а может и вовсе имеет legacy код на Java, о которого не уйти, то рекомендую вам ознакомиться со статьей.
Автор рассказывает как правильно подготовить ваш код для совместимости с Kotlin, конвертации его и аннотирования полученного кода для максимальной совместимости на уровне байт-кода с исходной версией в Java.
Medium
No more NPE. Converting Java file to Kotlin safely.
This article covers the potential sources of NPEs in Kotlin and provides step-by-step instructions for Java-Kotlin migration.
Изменилась ли ваша активность прослушивания подкастов в последнее время?
Final Results
30%
Снизилась
10%
Повысилась
26%
Не слушал(а) подкасты вовсе
5%
Перестал(а) слушать вовсе
18%
Как слушал(а) так и слушаю
3%
Начал(а) слушать подкасты
8%
Не приму участие в опросе
#AndroidAcademy #UI
Android Academy Minsk Topic #6 - Themes & Styles
6 апреля в 19.00 пройдет вебинар о кастомизации UI через темы и стили в Android.
План:
- Theme attributes
- Styles
- Theme.Overlay
- TextAppearance
- Применение style
- Библиотека Material Components
- Custom views & styles
- Лучшие практики по работе со стилями и темами
Android Academy Minsk Topic #6 - Themes & Styles
6 апреля в 19.00 пройдет вебинар о кастомизации UI через темы и стили в Android.
План:
- Theme attributes
- Styles
- Theme.Overlay
- TextAppearance
- Применение style
- Библиотека Material Components
- Custom views & styles
- Лучшие практики по работе со стилями и темами
YouTube
Themes & Styles, Alexey Katsuro@LWO
Slides: https://bit.ly/3aPfkbR
Telegram: https://t.me/androidacademyminsk
Facebook: https://www.facebook.com/AndroidAcademyMinsk/
Subscribe in Slack: https://goo.gl/ebrkBj
Styles and themes on Android allow you to separate the details of your app design…
Telegram: https://t.me/androidacademyminsk
Facebook: https://www.facebook.com/AndroidAcademyMinsk/
Subscribe in Slack: https://goo.gl/ebrkBj
Styles and themes on Android allow you to separate the details of your app design…
#Jetpack
Обновление библиотек Jetpack 01.04.2020
Новинки:
👉 ExifInterface 1.2.0. Поддержка EXIF в PNG и WebP и возможность проверки поддержки заданного mime type
👉 AppCompat 1.2.0-beta01 с важными исправлениями в Window Insets и новыми проверками в Android Lint
👉 RecyclerView 1.2.0-alpha02. Новый MergeAdapter для объединения нескольких адаптеров
👉 Activity 1.2.0-alpha03 - улучшения в Activity Result API. Рекомендуется перечитать документацию "Getting a result from an activity"
👉 Вторая beta CameraX
👉 Fragment 1.2.4 - исправление работы ProGuard для Fragment
👉 Новые бета Core, CustomView, DrawerLayout, Emoji, SlidingPaneLayout
👉 Новые альфы WorkManager, ViewPager2, Fragment
Обновление библиотек Jetpack 01.04.2020
Новинки:
👉 ExifInterface 1.2.0. Поддержка EXIF в PNG и WebP и возможность проверки поддержки заданного mime type
👉 AppCompat 1.2.0-beta01 с важными исправлениями в Window Insets и новыми проверками в Android Lint
👉 RecyclerView 1.2.0-alpha02. Новый MergeAdapter для объединения нескольких адаптеров
👉 Activity 1.2.0-alpha03 - улучшения в Activity Result API. Рекомендуется перечитать документацию "Getting a result from an activity"
👉 Вторая beta CameraX
👉 Fragment 1.2.4 - исправление работы ProGuard для Fragment
👉 Новые бета Core, CustomView, DrawerLayout, Emoji, SlidingPaneLayout
👉 Новые альфы WorkManager, ViewPager2, Fragment
Android Developers
Recent Release Notes | Android Developers