#Meetup #Online #COVID19 #ADVM
Android Dev Virtual Meetups
Многие из нас теперь работают из дома, и отменены или перенесены конференции и митапы. Но так хочется общения и возможности поделиться опытом...
Начиная с понедельника 23 марта 2020, известные вам всем представители Android разработки говорящие на русском языке запускают новый открытый для любого желающего проект Android Dev Virtual Meetups:
👉 Мы будем проводить митапы два раза в неделю на YouTube, с последующей возможностью поболтать лично со спикером
👉 Все доклады будут делать через онлайн трансляцию. Никакого монтажа! Всё максимально откровенно и открыто.
👉 Вы можете присоединяться к интересующим вас докладам и обсуждениям или посмотреть их позже в записи
Android Dev Virtual Meetups
Многие из нас теперь работают из дома, и отменены или перенесены конференции и митапы. Но так хочется общения и возможности поделиться опытом...
Начиная с понедельника 23 марта 2020, известные вам всем представители Android разработки говорящие на русском языке запускают новый открытый для любого желающего проект Android Dev Virtual Meetups:
👉 Мы будем проводить митапы два раза в неделю на YouTube, с последующей возможностью поболтать лично со спикером
👉 Все доклады будут делать через онлайн трансляцию. Никакого монтажа! Всё максимально откровенно и открыто.
👉 Вы можете присоединяться к интересующим вас докладам и обсуждениям или посмотреть их позже в записи
Media is too big
VIEW IN TELEGRAM
#Fragment #Activity
Смерть startActivityForResult объявлена в Fragment 1.3.0 и Activity 1.2.0
Стандартный механизм для получения результата из Activity (например Uri сделанного фото) - это Activity.startActivityForResult. API не самое удобное и заставляющее писать кучу кода, но теперь нас ждет улучшение.
В следующей стабильной версии появляется API ActivityResultRegistry, которое будет инкапсулировать в себе работу с
Попробовать изменения можно в Fragment 1.3.0 Alpha 02 и Activity 1.2.0 Alpha 02
Смерть startActivityForResult объявлена в Fragment 1.3.0 и Activity 1.2.0
Стандартный механизм для получения результата из Activity (например Uri сделанного фото) - это Activity.startActivityForResult. API не самое удобное и заставляющее писать кучу кода, но теперь нас ждет улучшение.
В следующей стабильной версии появляется API ActivityResultRegistry, которое будет инкапсулировать в себе работу с
startActivityForResult()
+ onActivityResult()
, а также requestPermissions()
+ onRequestPermissionsResult()
. Добавить работу с получением результата можно будет в любой класс, API гибкое и предоставляет такие возможности.Попробовать изменения можно в Fragment 1.3.0 Alpha 02 и Activity 1.2.0 Alpha 02
Android Developers
Getting a result from an activity | Android Developers
Пример как будет выглядеть работы с ActivityResultRegistry из Activity
#Jetpack #Fragment #Security
Обновления Android Jetpack библиотек
Обовились библиотеки (ниже только beta и стабильнее версии):
👉 Fragment 1.2.3: Bugfix
👉 Paging 2.1.2: Bugfix
👉 Room 2.2.5: Bugfix
👉 Security 1.0.0-beta01. Больше подробностей и библиотеке здесь
👉 WorkManager 2.3.4: Bugfix
Полный список обновлений здесь
Обновления Android Jetpack библиотек
Обовились библиотеки (ниже только beta и стабильнее версии):
👉 Fragment 1.2.3: Bugfix
👉 Paging 2.1.2: Bugfix
👉 Room 2.2.5: Bugfix
👉 Security 1.0.0-beta01. Больше подробностей и библиотеке здесь
👉 WorkManager 2.3.4: Bugfix
Полный список обновлений здесь
Android Developers
Recent Release Notes | Android Developers
Android Broadcast
#AndroidAcademy #Minsk #Testing Android Academy Minsk Advanced Topic #4 - Testing Все об этом говорят, но мало кто это делает в проектах - пишут тесты. Почему? Нет времени, спешка, считают что это не приносит много пользы. На следующей лекции в Android…
#AndroidAcademy #Minsk
Android Academy Minsk переносит все свои лекции в онлайн, но план остается прежний. Слежите за YouTube каналом "Android Academy Minsk"
Android Academy Minsk переносит все свои лекции в онлайн, но план остается прежний. Слежите за YouTube каналом "Android Academy Minsk"
YouTube
Android Academy Minsk
To create an active community of Android developers and designers
We believe that Android is the coolest platform in the world.
Our aim is to create a thriving community of Android developers and designers. We organize courses and regular meetups in order…
We believe that Android is the coolest platform in the world.
Our aim is to create a thriving community of Android developers and designers. We organize courses and regular meetups in order…
#GoogleIO #COVID19
Google I/O 2020 отменили полностью. Даже онлайн
Коронавирус распространяется все активнее и мы больше чувствуем эффект. Google I/O отменяется, боюсь что и релиз Android 11 будет отложен. Ждем Android Dev Summit в ноябре.
Google I/O 2020 отменили полностью. Даже онлайн
Коронавирус распространяется все активнее и мы больше чувствуем эффект. Google I/O отменяется, боюсь что и релиз Android 11 будет отложен. Ждем Android Dev Summit в ноябре.
io.google
Google I/O 2025
Don't miss Google I/O, featuring product launches, innovations, and insights. Tune in for the live keynotes and sessions.
#Tooling #Debug
Facebook Flipper (formerly Sonar)
Flipper - это для платформа для отладки Android и iOS приложений. С помощью нее вы можете визуализировать, проверять и управлять вашими приложениями с вашего компьютера с помощью удобного графического интерфейса.
Из коробки у вас есть возможности
👉просматривать логи
👉проверять разметку и свойства View
👉навигация с помощью deep link
👉отслеживание сетевых запросов
👉просмотр данных в БД
👉просмотр загруженных изображений (пока поддерживается только Fresco)
👉Sandbox
👉Работа с SharedPreferences
👉интеграция с LeakCanary
👉перехват крэшей приложения
👉шаринг данных из Flipper для отладки их на другом устройстве
Помимо прочего Flitter имеет возможность создания собственных расширений.
Facebook Flipper (formerly Sonar)
Flipper - это для платформа для отладки Android и iOS приложений. С помощью нее вы можете визуализировать, проверять и управлять вашими приложениями с вашего компьютера с помощью удобного графического интерфейса.
Из коробки у вас есть возможности
👉просматривать логи
👉проверять разметку и свойства View
👉навигация с помощью deep link
👉отслеживание сетевых запросов
👉просмотр данных в БД
👉просмотр загруженных изображений (пока поддерживается только Fresco)
👉Sandbox
👉Работа с SharedPreferences
👉интеграция с LeakCanary
👉перехват крэшей приложения
👉шаринг данных из Flipper для отладки их на другом устройстве
Помимо прочего Flitter имеет возможность создания собственных расширений.
#Coroutines #Kotlin
Preventing coroutine cancellation for important actions
Kotlin Coroutines базируются в своей работе на Structured Concurrency, но если выбрать неправильный CoroutineScope легко может выйти ситуация, что ваша операция не выполнится. Например, сообщение не отправится на сервер или данные не будут обновлены.
В статье разбирается как сделать чтобы все было хорошо с помощью специальной Job - NonCancellable
Preventing coroutine cancellation for important actions
Kotlin Coroutines базируются в своей работе на Structured Concurrency, но если выбрать неправильный CoroutineScope легко может выйти ситуация, что ваша операция не выполнится. Например, сообщение не отправится на сервер или данные не будут обновлены.
В статье разбирается как сделать чтобы все было хорошо с помощью специальной Job - NonCancellable
craigrussell
Preventing coroutine cancellation for important actions
A pattern for launching coroutines which cancel when the Activity or ViewModel is destroyed, but support allowing important parts of the coroutine to run uncancelled.
Android Broadcast
Как повлиял коронавирус на продуктивность вашей работы?
Обсуждение итогов опроса в @android_broadcast_talks
#CodeQuality #Kotlin
Detekt 1.7.0
🚀Увеличена скорость работы Gradle плагина
☑️Новое правило AbsentOrWrongFileLicense - проверка что каждый Kotlin файл имеет описание лицензии в шапке Kotlin файла
👉Множество мелких улучшение и исправлений
Detekt 1.7.0
🚀Увеличена скорость работы Gradle плагина
☑️Новое правило AbsentOrWrongFileLicense - проверка что каждый Kotlin файл имеет описание лицензии в шапке Kotlin файла
👉Множество мелких улучшение и исправлений
#Material #Animation
Implementing the Motion System With Material Components for Android
Система Material Design развивается и в ней появляются все новые возможности, как и библиотека Material Components Android реализует спецификацию. В новой версии библиотеки (1.2.0-alpha05) появилась реализация системы анимаций перемещения.
Направление развития очень хорошее🔥, теперь помимо стандартных виджетов мы будем иметь еще и стандартные анимации, которые нам смогут легко поставлять дизайнеры с помощью утилиты Direct.
Implementing the Motion System With Material Components for Android
Система Material Design развивается и в ней появляются все новые возможности, как и библиотека Material Components Android реализует спецификацию. В новой версии библиотеки (1.2.0-alpha05) появилась реализация системы анимаций перемещения.
Направление развития очень хорошее🔥, теперь помимо стандартных виджетов мы будем иметь еще и стандартные анимации, которые нам смогут легко поставлять дизайнеры с помощью утилиты Direct.
Medium
Implementing The Motion System with material components for Android
Deep dive into The Motion System with Google’s latest Material Component library release
#Fragment
Раскладываем на части FragmentLifecycleCallbacks
Разбор возможностей FragmentLifecycleCallbacks:
👉 Отслеживание жизненного цикла Fragment
👉 Возможность выполнения действий на различных стадиях жизненного цикла Fragment (как до так и после) централизовано
👉 Примеры использования: Dagger и аналитика
Раскладываем на части FragmentLifecycleCallbacks
Разбор возможностей FragmentLifecycleCallbacks:
👉 Отслеживание жизненного цикла Fragment
👉 Возможность выполнения действий на различных стадиях жизненного цикла Fragment (как до так и после) централизовано
👉 Примеры использования: Dagger и аналитика
Хабр
Раскладываем на части FragmentLifecycleCallbacks
Привет! Сегодня я продолжаю рассказывать про инструменты, которые почему-то обделили вниманием. В своей предыдущей статье я написал про возможности ActivityLifec...
#Network #OkHttp
Authorization and retrying of web requests for OkHttp and Retrofit
Рецепт как с помощью OkHttp Interceptors можно реализовать повтор неудавшегося выполненного запроса и или обновить Auth Token, в случае если он истек.
Такой способ позволяет автоматизировать выполнение операций, которые стандартно приходится реализовать при работе с REST.
Authorization and retrying of web requests for OkHttp and Retrofit
Рецепт как с помощью OkHttp Interceptors можно реализовать повтор неудавшегося выполненного запроса и или обновить Auth Token, в случае если он истек.
Такой способ позволяет автоматизировать выполнение операций, которые стандартно приходится реализовать при работе с REST.
Lordcodes
Authorization and retrying of web requests for OkHttp and Retrofit | Lord Codes
Most remote APIs require some form of authorization in order to access them. We will explore using OkHttp Interceptors and Authorizers to authorize our web requests for use with OkHttp and Retrofit.
#Kotlin
Kotlin 1.4-M1 Released
Мы ждали, ждали, и ждали и снова ждали и наконец дождались! Первая превью следующей мажорной версии языка уже доступна
Что нового:
👉 Новый алгоритм Type Inference теперь включен по умолчанию: поддержка SAM, лучший вывод типов, smart cast для lambda
👉 Kotlin/JVM компилятор стали генерировать новые аннотации типов в байткоде для Java 8+
👉 Новый бекенд для Kotlin/JS
👉 Улучшения в standard library: удалено deprecated API, а что-то теперь помечено как deprecated
Полный список изменений здесь
Пока выкачена только первая партия изменений, но много чего еще впереди. Подробнее что стоит ждать можно найти здесь
Kotlin 1.4-M1 Released
Мы ждали, ждали, и ждали и снова ждали и наконец дождались! Первая превью следующей мажорной версии языка уже доступна
Что нового:
👉 Новый алгоритм Type Inference теперь включен по умолчанию: поддержка SAM, лучший вывод типов, smart cast для lambda
👉 Kotlin/JVM компилятор стали генерировать новые аннотации типов в байткоде для Java 8+
👉 Новый бекенд для Kotlin/JS
👉 Улучшения в standard library: удалено deprecated API, а что-то теперь помечено как deprecated
Полный список изменений здесь
Пока выкачена только первая партия изменений, но много чего еще впереди. Подробнее что стоит ждать можно найти здесь
The JetBrains Blog
Kotlin 1.4-M1 Released | The Kotlin Blog
We are happy to announce the first preview version of the new major release: Kotlin 1.4-M1.
A few months ago, we published an announcement of what to expect in Kotlin 1.4. As the release approaches,
A few months ago, we published an announcement of what to expect in Kotlin 1.4. As the release approaches,
#DynamicFeature
Exploring Dynamic Feature Navigation on Android
Navigation Component дал не только способ для реализации навигации в Android стандартным путем, но визуальный редактор.
Решение все же еще выглядит сырым т.к. не решен вопрос с возвращением результата (Activity.startActivityForResult) и навигацией в многомодульном приложение, когда у вас есть Dynamic Feature модуль. Обе этих функции будут поддерживаться в следующей версии библиотеки - Navigation 2.3.0.
В статье разбирается реализация работы с Dynamic Feature модулями в Navigation Component
Exploring Dynamic Feature Navigation on Android
Navigation Component дал не только способ для реализации навигации в Android стандартным путем, но визуальный редактор.
Решение все же еще выглядит сырым т.к. не решен вопрос с возвращением результата (Activity.startActivityForResult) и навигацией в многомодульном приложение, когда у вас есть Dynamic Feature модуль. Обе этих функции будут поддерживаться в следующей версии библиотеки - Navigation 2.3.0.
В статье разбирается реализация работы с Dynamic Feature модулями в Navigation Component
Medium
Exploring Dynamic Feature Navigation on Android
Since the introduction of the Navigation Component on Android, navigating the different parts of our application has become much more…
Умные часы на основе какой ОС вы используете с Android смарфтоном?
Anonymous Poll
7%
Android Wear/Google Wear
12%
Samsung Tizen
1%
Huawei Lite OS
1%
Firtbit OS
23%
Xiaomi MI Band
7%
Использую часы с другой ОС
39%
Нет часов вовсе
11%
Смотрю результаты
#Testing #BestPractices
Unit Testing Best Practices
Наши приложения нуждаются в тестах. Необходимо автоматизировать проверки того что мы пишем, чтобы повышать качество программ и обеспечить защиту от неосторожного рефакторинга.
В статье рассматриваются чему способствует практика написания тестов, а также лучшие практики в Unit тестировании.
Unit Testing Best Practices
Наши приложения нуждаются в тестах. Необходимо автоматизировать проверки того что мы пишем, чтобы повышать качество программ и обеспечить защиту от неосторожного рефакторинга.
В статье рассматриваются чему способствует практика написания тестов, а также лучшие практики в Unit тестировании.
Medium
Unit Testing Best Practices
A list of practical suggestions that can help you write better tests
#Testing
Stress-testing Android apps
При разработке приложений большинство разработчиков не уделяет внимание проверке приложений в стрессовых ситуациях:
👉 проблемы с сетью
👉 малое количество свободной памяти на диске
👉 проблемы с сервером
👉 убийство процесса приложения
и множество других ситуаций
В статье рассказывается про основные такие проблемы и как их можно протестировать в вашем приложении
Stress-testing Android apps
При разработке приложений большинство разработчиков не уделяет внимание проверке приложений в стрессовых ситуациях:
👉 проблемы с сетью
👉 малое количество свободной памяти на диске
👉 проблемы с сервером
👉 убийство процесса приложения
и множество других ситуаций
В статье рассказывается про основные такие проблемы и как их можно протестировать в вашем приложении
Medium
Stress-testing Android apps
Before starting with the recently published Trade Me app for jobs hunters, we spent some time reading and thinking about how we can build a…