#Kotlin #Coroutines
Вышла KotlinX.Coroutines 1.4.0-M1
Что нового:
👉 SharedFlow
👉 Превращение Flow в SharedFlow и StateFlow с помощью
👉 Breaking Changes в Channels под капотом
👉 Исправление багов
👉 Android Lint проверки
👉 ProGuard правила для kotlinx-coroutines-core
👉 Улучшения работа CoroutineDispatcher на Android. Инициализация стала быстрее
Вышла KotlinX.Coroutines 1.4.0-M1
Что нового:
👉 SharedFlow
👉 Превращение Flow в SharedFlow и StateFlow с помощью
Flow.shareIn
и Flow.stateIn
👉 Breaking Changes в Channels под капотом
👉 Исправление багов
👉 Android Lint проверки
👉 ProGuard правила для kotlinx-coroutines-core
👉 Улучшения работа CoroutineDispatcher на Android. Инициализация стала быстрее
#Kotlin #Coroutines
Coroutines Update by Vsevolod Tolstopyatov (23 мин)
Много интересного про новый релиз и развитие Coroutine можно узнать из доклада Lead команды KotlinX.
Coroutines Update by Vsevolod Tolstopyatov (23 мин)
Много интересного про новый релиз и развитие Coroutine можно узнать из доклада Lead команды KotlinX.
YouTube
Coroutines Update by Vsevolod Tolstopyatov
Recording brought to you by American Express. https://americanexpress.io/kotlin-jobs
In this talk, we'll cover what has changed in coroutines over the past year, and how it affects programming with coroutines. We’ll cover the debugging experience, new Flow…
In this talk, we'll cover what has changed in coroutines over the past year, and how it affects programming with coroutines. We’ll cover the debugging experience, new Flow…
#Firebase #Analytics
What’s next with the latest in app analytics
Нова порция обновления в Google Analytics:
👉 Подсчёт дохода от рекламы
👉 Более простой способ создания отчетов по заданным параметрам
👉 Signed user insights - возможность создание аудитории, которая авторизована в приложении, и доставка им персонализированных сообщений в маркетинговых компаниях
Чтобы получить все эти возможности вам надо обновиться на новую Google Analytics из Firebase консоли
What’s next with the latest in app analytics
Нова порция обновления в Google Analytics:
👉 Подсчёт дохода от рекламы
👉 Более простой способ создания отчетов по заданным параметрам
👉 Signed user insights - возможность создание аудитории, которая авторизована в приложении, и доставка им персонализированных сообщений в маркетинговых компаниях
Чтобы получить все эти возможности вам надо обновиться на новую Google Analytics из Firebase консоли
The Firebase Blog
What’s next with the latest in app analytics
#HMS #Location
Встраиваем геолокацию от Huawei в Android приложение
Руководство для всех кто интегрируется поддержку HMS и готовится к публикации в Huawei App Gallery. В новой части серии рассказывается об интеграции работы с местоположением
Встраиваем геолокацию от Huawei в Android приложение
Руководство для всех кто интегрируется поддержку HMS и готовится к публикации в Huawei App Gallery. В новой части серии рассказывается об интеграции работы с местоположением
Хабр
Встраиваем геолокацию от Huawei в Android приложение
В предыдущих статьях мы создавали аккаунт разработчика для использования Huawei Mobile Services и подготавливали проект к их использованию. И использовали анали...
#AndroidAuto
Introducing the Android for Cars App Library
Google открывает возможность создавать сторонние приложения для Android Auto. Библиотека для разработки вышла в открытую beta. Разрабатывать приложения можно в 3 категориях: навигация, парковки и приложения для зарядки электромобилей.
Introducing the Android for Cars App Library
Google открывает возможность создавать сторонние приложения для Android Auto. Библиотека для разработки вышла в открытую beta. Разрабатывать приложения можно в 3 категориях: навигация, парковки и приложения для зарядки электромобилей.
Android Developers Blog
Introducing the Android for Cars App Library
News and insights on the Android platform, developer tools, and events.
#Conference #Online
GDG DevFest Ukraine 2020 состоится уже в это воскресенье, 18 октября.
Будут выступать спикеры с Google, Microsoft, Atlassian и других компаний. Вас ждут актуальные темы по Web, Cloud, Android, Kotlin и Flutter. Также будет много развлечений 🔥
GDG DevFest Ukraine 2020 состоится уже в это воскресенье, 18 октября.
Будут выступать спикеры с Google, Microsoft, Atlassian и других компаний. Вас ждут актуальные темы по Web, Cloud, Android, Kotlin и Flutter. Также будет много развлечений 🔥
#Koin #DependencyInjection
What’s next with Koin? — 2.2 & 3.0 releases
Koin - одно из популярных решений для DI для проектов на Kotlin. По сравнению с Dagger он убрал долгую компиляцию, упростил объявление зависимостей, но потерял проверку графа во время компиляции.
Совсем скоро выйдет релиз 2.2 этой библиотеки в которой будет:
👉
👉 Поддержка
👉 Поддержка Jetpack Compose
👉 Более простой способ описания Android Scope-ов
👉 Проведены работы под капотом: создать объект Koin Context становится проще
👉 Возможность положить параметр, который inject-ится в зависимость, в граф. По аналогии с
👉 Поддержка JUnit 5
В Koin 3.0 нас ждет поддержка Kotlin Multiplatform
What’s next with Koin? — 2.2 & 3.0 releases
Koin - одно из популярных решений для DI для проектов на Kotlin. По сравнению с Dagger он убрал долгую компиляцию, упростил объявление зависимостей, но потерял проверку графа во время компиляции.
Совсем скоро выйдет релиз 2.2 этой библиотеки в которой будет:
👉
stateViewModel()
и viewModel()
буду заменены на viewModel()
👉 Поддержка
WorkManager
👉 Поддержка Jetpack Compose
👉 Более простой способ описания Android Scope-ов
👉 Проведены работы под капотом: создать объект Koin Context становится проще
👉 Возможность положить параметр, который inject-ится в зависимость, в граф. По аналогии с
StateHandleBundle
👉 Поддержка JUnit 5
В Koin 3.0 нас ждет поддержка Kotlin Multiplatform
Medium
What’s next with Koin? — 2.2 & 3.0 releases
Hi Koin users 👋, Koin 2.2.0 is almost there. This new milestone brings better stability, some API rework and also, helps you inject Work…
#Architecture #JetPack
Navigation Component: An Overview
Повторение - мать учения. Нам вновь рассказывают о возможностях этого компонента и как он может решить навигацию в вашем проекте. Это неправда, но тем кто еще не знает - рекомендую узнать базис
Navigation Component: An Overview
Повторение - мать учения. Нам вновь рассказывают о возможностях этого компонента и как он может решить навигацию в вашем проекте. Это неправда, но тем кто еще не знает - рекомендую узнать базис
Medium
Navigation Component: An Overview
In which I introduce some fundamental concepts of the Navigation component tool and APIs
#Architecture #JetPack
Navigating to Dialog Destinations
Развитие темы в котором говорят уже о навигации в диалоги
Navigating to Dialog Destinations
Развитие темы в котором говорят уже о навигации в диалоги
Medium
Navigating to Dialog Destinations
Navigation component isn’t limited to destinations inside of NavHostFragment
#JetPack #Navigation
AndroidX Navigation: Building on the Wrong Abstraction
JetPack Navigation получилась не самой удачной библиотекой, так как не решает эффективно задачи навигации в проектах среднего и большого объема. Особенно где есть многомодульность.
В статье разбирается альтернативный взгляд на навигацию в коде с помощью аннотаций
AndroidX Navigation: Building on the Wrong Abstraction
JetPack Navigation получилась не самой удачной библиотекой, так как не решает эффективно задачи навигации в проектах среднего и большого объема. Особенно где есть многомодульность.
В статье разбирается альтернативный взгляд на навигацию в коде с помощью аннотаций
Medium
AndroidX Navigation: Building on the Wrong Abstraction
I recently read an article by Jesse Wilson titled “Building on the Wrong Abstraction”. If you haven’t read the article already, I would…
Избегайте внедрения внешних библиотек в свой проект
Все мы используем библиотеки с целью чтобы сократить время на разработку, переложив усилия на поддержку их на других разработчиков. Всегда ли оправдан такой подход? Могут ли быть в нем проблемы?
В статье автор рассматривает потенциальные проблемы интеграции сторонних библиотек:
👉 Негативный эффект на размер приложения
👉 Усложнения проекта (автор приводит в пример EventBus)
👉 Сложность погружения в библиотеку для существующих и новых разработчиков в компании
👉 Эффект на скорость сборки
👉 Баги, которые не дают использовать либу, и которые не исправляются
👉 Уязвимости в библиотеках, которые позволят злоумышленникам воспользоваться ими и получить доступ к данным
👉 Доверие разработчику и гарантии поддержки библиотеки
👉 Библиотека проникает во все слои кода (RxJava)
👉 Накладываемый ограничения на код из-за библиотеки
В конце автор добавляет хороший список вопрос, для того чтобы проанализировать стоит ли добавить библиотеку в ваш проект
Все мы используем библиотеки с целью чтобы сократить время на разработку, переложив усилия на поддержку их на других разработчиков. Всегда ли оправдан такой подход? Могут ли быть в нем проблемы?
В статье автор рассматривает потенциальные проблемы интеграции сторонних библиотек:
👉 Негативный эффект на размер приложения
👉 Усложнения проекта (автор приводит в пример EventBus)
👉 Сложность погружения в библиотеку для существующих и новых разработчиков в компании
👉 Эффект на скорость сборки
👉 Баги, которые не дают использовать либу, и которые не исправляются
👉 Уязвимости в библиотеках, которые позволят злоумышленникам воспользоваться ими и получить доступ к данным
👉 Доверие разработчику и гарантии поддержки библиотеки
👉 Библиотека проникает во все слои кода (RxJava)
👉 Накладываемый ограничения на код из-за библиотеки
В конце автор добавляет хороший список вопрос, для того чтобы проанализировать стоит ли добавить библиотеку в ваш проект
Хабр
Избегайте внедрения внешних библиотек в свой проект
Часто можно услышать фразу: «Зачем писать свой велосипед? Возьми готовую либу и пользуйся! За тебя уже все написали». Особенно часто подобные выражения слышат на...
#GooglePlay
Developer tips and guides: Common policy violations and how you can avoid them
Насколько хорошо вы знаете политики Google Play? Я ими никогда не запаривался, но те кто сталкивался мог запомнить надолго. Разработчики Google Play решили поделиться нарушениями основных политик:
👉 Ссылки на другие приложения в Google Play из
👉 Наличие слов в описании приложения, которые не относятся к вашему приложению, но добавляются туда ради улучшения поисковой выдачи
👉 Неподдерживаемые приложения в аккаунте разработчики, которые лучше отключить
👉 Приложения, которые содержат только WebView, предназначенные для перенаправления трафика на сайт запрещены к публикации
Подробно узнать обо всех политиках можно в Play Developer Policy Center, также рекомендуется пройти специальный тренинг Google Play Academy
Developer tips and guides: Common policy violations and how you can avoid them
Насколько хорошо вы знаете политики Google Play? Я ими никогда не запаривался, но те кто сталкивался мог запомнить надолго. Разработчики Google Play решили поделиться нарушениями основных политик:
👉 Ссылки на другие приложения в Google Play из
👉 Наличие слов в описании приложения, которые не относятся к вашему приложению, но добавляются туда ради улучшения поисковой выдачи
👉 Неподдерживаемые приложения в аккаунте разработчики, которые лучше отключить
👉 Приложения, которые содержат только WebView, предназначенные для перенаправления трафика на сайт запрещены к публикации
Подробно узнать обо всех политиках можно в Play Developer Policy Center, также рекомендуется пройти специальный тренинг Google Play Academy
Android Developers Blog
Developer tips and guides: Common policy violations and how you can avoid them
News and insights on the Android platform, developer tools, and events.
Что используете в Unit тестах больше?
Anonymous Poll
41%
Mock
5%
Stub
9%
В чем разница?
36%
Не пишу тесты
10%
Не участвую в опросе
#Kotlin
Слышали о Kotlin Android Extensions? На оф сайте уже не найти информации о них, а в Kotlin 1.4.20 этот плагина будет помечен как deprecated.
Рекомендуют мигрировать на View Binding. Чтобы было проще использовать его - рекомендую мою библиотеку ViewBindingPropertyDelegate
Слышали о Kotlin Android Extensions? На оф сайте уже не найти информации о них, а в Kotlin 1.4.20 этот плагина будет помечен как deprecated.
Рекомендуют мигрировать на View Binding. Чтобы было проще использовать его - рекомендую мою библиотеку ViewBindingPropertyDelegate
#Testing
Паттерн PageObject в Kotlin для UI-тестирования Android
PageObject - это подход, который давно использовался в тестирование за пределами Android, но в платформе от Google стал адаптироваться не так давно.
В статье рассматривается этот подход, его плюсы и как его реализовать
Паттерн PageObject в Kotlin для UI-тестирования Android
PageObject - это подход, который давно использовался в тестирование за пределами Android, но в платформе от Google стал адаптироваться не так давно.
В статье рассматривается этот подход, его плюсы и как его реализовать
Хабр
Паттерн PageObject в Kotlin для UI-тестирования Android
Это перевод статьи ведущего Android & iOS разработчика Yahoo (Verizon Media) Брама Йе. Он рассказывает о внедрении паттерна PageObject в свои инструментальные тесты, который делает их более...
#Architecture
Создание SDK под Android в стиле Single-Activity
Описание подхода разработки SDK в котором отказываются от Activity как точки входа в SDK и смещают точки входа в Fragment. В статье освещаются плюсы и минусы такого подхода, как использовать Dagger в таком SDK и др. особенности
Создание SDK под Android в стиле Single-Activity
Описание подхода разработки SDK в котором отказываются от Activity как точки входа в SDK и смещают точки входа в Fragment. В статье освещаются плюсы и минусы такого подхода, как использовать Dagger в таком SDK и др. особенности
Хабр
Создание SDK под Android в стиле Single-Activity
Single activity подходом при создании конечного приложения под Android никого не удивишь. Но мы пошли дальше и использовали No-Activity при разработке SDK. Сейча...
#Image #Bitmap
Большие картинки? Deal with it
Android-разработчикам редко приходится решать проблему оптимизации изображений внутри приложений, как правило, всё заканчивается заменой PNG на векторные изображения. Но в случае когда вам всё же необходимо грузить большие изображения вас могут ждать подводные камни.
Автор статьи рассказывает как решалась подобная проблема с помощью BitmapRegionDecoder и какие нюансы могут ждать при использовании этого инструмента из стандартной библиотеки.
Большие картинки? Deal with it
Android-разработчикам редко приходится решать проблему оптимизации изображений внутри приложений, как правило, всё заканчивается заменой PNG на векторные изображения. Но в случае когда вам всё же необходимо грузить большие изображения вас могут ждать подводные камни.
Автор статьи рассказывает как решалась подобная проблема с помощью BitmapRegionDecoder и какие нюансы могут ждать при использовании этого инструмента из стандартной библиотеки.
Хабр
Большие картинки? Deal with it
Привет, Хабр! Приложение iFunny создано, чтобы показывать контент, который генерируют пользователи. Это могут быть видео, гифки и картинки. Очень большие карти...
#Navigation #Arhitecture
Вышли релизы Cicerone 6.0 и 6.1
В новой версии популярной библиотеки для навигации в Android приложение произошел ряд важных изменений:
👉 Переход на Kotlin
👉 Изменен пакет библиотеки (breaking changes)
👉 Возможность выбрать стратегию открытия нового экрана (add или replace)
👉 Добавлена поддержка
👉 Поддержка результатов
👉
Вышли релизы Cicerone 6.0 и 6.1
В новой версии популярной библиотеки для навигации в Android приложение произошел ряд важных изменений:
👉 Переход на Kotlin
👉 Изменен пакет библиотеки (breaking changes)
👉 Возможность выбрать стратегию открытия нового экрана (add или replace)
👉 Добавлена поддержка
FragmentFactory
👉 Поддержка результатов
👉
screenKey
используется как тэг Fragment
GitHub
Release Version 6.0 · terrakok/Cicerone
Fully rewritten on Kotlin! (breaking changes: a lot of external API was changed for more smoothy experience in Kotlin)
root package changed to com.github.terrakok for avoid migration problems
Added...
root package changed to com.github.terrakok for avoid migration problems
Added...
#course #online #free
26 октября стартует базовый курс Android Academy по Android-разработке (Android Fundamentals)
Что за курс?
Абсолютно бесплатный курс по разработке приложений под платформу Android. Формат: 13 воркшопов по 2 часа.
Для кого?
Для тех кто хочет стать мобильным разработчиком, либо для уже опытных специалистов, которые ищут чего-то новенького!
⚠️ Требования к участникам: знания Java/Kotlin или любого другого языка программирования
Для регистрации - пишите боту @ohMyEventBot в Телеграме о том, что вы хотите к нам присоединиться. Переходим по этой ссылке и следуйте инструкциям. Как получите сообщение об успехе - вы в списках! .
26 октября стартует базовый курс Android Academy по Android-разработке (Android Fundamentals)
Что за курс?
Абсолютно бесплатный курс по разработке приложений под платформу Android. Формат: 13 воркшопов по 2 часа.
Для кого?
Для тех кто хочет стать мобильным разработчиком, либо для уже опытных специалистов, которые ищут чего-то новенького!
⚠️ Требования к участникам: знания Java/Kotlin или любого другого языка программирования
Для регистрации - пишите боту @ohMyEventBot в Телеграме о том, что вы хотите к нам присоединиться. Переходим по этой ссылке и следуйте инструкциям. Как получите сообщение об успехе - вы в списках! .