#CI #CD
«Ну, покати!» или CI/CD мобильных приложений на основе контракта
Avito делится тем как они заводят процесс релиза мобильного приложения на основе TeamCity и Nupokati.
«Ну, покати!» или CI/CD мобильных приложений на основе контракта
Avito делится тем как они заводят процесс релиза мобильного приложения на основе TeamCity и Nupokati.
Хабр
«Ну, покати!» или CI/CD мобильных приложений на основе контракта
Всем привет! Меня зовут Дмитрий, я релиз-инженер в команде CI/CD Speed Авито. Вот уже несколько лет мы с коллегами отвечаем за всё, что связано с релизами наших...
#Tooling #JakeWharton
Dependency Tree Diff
Утилита для вычисления разницы между выводом Gradle таска `dependencies`. Будет полезно, чтобы делать анализ и визуализировать что менялось между коммитами. Также упростит отслеживание транзитивных зависимостей.
Dependency Tree Diff
Утилита для вычисления разницы между выводом Gradle таска `dependencies`. Будет полезно, чтобы делать анализ и визуализировать что менялось между коммитами. Также упростит отслеживание транзитивных зависимостей.
#Tooling #JakeWharton
Diffuse - утилита для определения изменения размера APK, AAB, AAR и JAR файлов, которая по категориям файлов в архивах показывает детали.
Diffuse - утилита для определения изменения размера APK, AAB, AAR и JAR файлов, которая по категориям файлов в архивах показывает детали.
Смотрите ли доклады, связанные с работой, на английском?
Anonymous Poll
53%
Да, главное чтобы интересно
23%
Предпочитаю контент на русском, но могу и на английском
11%
Английский с субтитрами
7%
Только на русском языке
1%
Другой вариант
4%
Не участвую в опросе
#MLKit #MachineLearning
ML Kit Pose Detection Makes Staying Active at Home Easier
Одной из возможностей, которые предоставляются ML Kit SDK, является Pose Detection.
Pose Detection API обеспечивает отслеживание положения всего тела по 33 точкам, включая лицевые ориентиры (уши, глаза, рот и нос), отслеживание рук и ног, а также отслеживание множества сложных спортивных поз, таких как позы йоги.
Особенности решения:
👉 решение кроссплатформенное (Android и iOS)
👉 работает как с изображениями так и с видео
👉 позволяет использовать "Быстрый" и "Точный" режимы
В посте рассматриваются примеры применения для физической активности и обучения танцам.
ML Kit Pose Detection Makes Staying Active at Home Easier
Одной из возможностей, которые предоставляются ML Kit SDK, является Pose Detection.
Pose Detection API обеспечивает отслеживание положения всего тела по 33 точкам, включая лицевые ориентиры (уши, глаза, рот и нос), отслеживание рук и ног, а также отслеживание множества сложных спортивных поз, таких как позы йоги.
Особенности решения:
👉 решение кроссплатформенное (Android и iOS)
👉 работает как с изображениями так и с видео
👉 позволяет использовать "Быстрый" и "Точный" режимы
В посте рассматриваются примеры применения для физической активности и обучения танцам.
Googleblog
ML Kit Pose Detection Makes Staying Active at Home Easier
News and insights on Google platforms, tools, and events.
#Conference #Online
Mobile Z-Days: iOS, Android и Flutter
8-10 сентября вы сможете узнать больше о мобильной разработке от экспертов мира мобильной разработки. Один вечер – одно направление: iOS, Android и Flutter.
Android-темы (9 сентября):
● Protocol Oriented Programming in Kotlin?
● Android apps security – lessons learned
● Fantastic API and where to find them
Также в рамках события пройдёт запись подкаста Mobile People Talks и выступит много моих друзей.
Mobile Z-Days: iOS, Android и Flutter
8-10 сентября вы сможете узнать больше о мобильной разработке от экспертов мира мобильной разработки. Один вечер – одно направление: iOS, Android и Flutter.
Android-темы (9 сентября):
● Protocol Oriented Programming in Kotlin?
● Android apps security – lessons learned
● Fantastic API and where to find them
Также в рамках события пройдёт запись подкаста Mobile People Talks и выступит много моих друзей.
#ViewBinding #Kotlin
📺ViewBinding vs Kotlin Synthetics (16 минут)
Небольшой обзор от Redmadrobot того, почему происходит переход с Kotlin Synthetics на View Binding:
- С чего все начиналось 🦖
- Что не так с synthetics?
- На сайте Kotlin уже нет страницы про синтетики 😎
- Все ли хорошо с View Binding? 🙄 Личный опыт
Хотите упростить работу с View Binding - посмотрите на мою библиотеку ViewBindingPropertyDelegate
📺ViewBinding vs Kotlin Synthetics (16 минут)
Небольшой обзор от Redmadrobot того, почему происходит переход с Kotlin Synthetics на View Binding:
- С чего все начиналось 🦖
- Что не так с synthetics?
- На сайте Kotlin уже нет страницы про синтетики 😎
- Все ли хорошо с View Binding? 🙄 Личный опыт
Хотите упростить работу с View Binding - посмотрите на мою библиотеку ViewBindingPropertyDelegate
YouTube
ViewBinding vs Kotlin Synthetics
Небольшой обзор того, почему происходит переход с Kotlin Synthetics на View Binding:
- С чего все начиналось 🦖
- Что не так с synthetics?
- На сайте Kotlin уже нет страницы про синтетики 😎
- А все ли хорошо с View Binding? 🙄 Личный опыт
PS. В видео случайно…
- С чего все начиналось 🦖
- Что не так с synthetics?
- На сайте Kotlin уже нет страницы про синтетики 😎
- А все ли хорошо с View Binding? 🙄 Личный опыт
PS. В видео случайно…
Что выбираете вы?
Final Results
43%
Kotlin Synthetic
39%
View Binding/Data Binding
7%
Другое
11%
Не участвую в опросе
#Testing
На чем писать Android UI-тесты
Сравнение различных инструментов для тестирования приложения: UiAutomator, Espresso, Robolectric. Также рассматриваются обертки над ними Appium, Kakao, Barista и Kaspresso.
На чем писать Android UI-тесты
Сравнение различных инструментов для тестирования приложения: UiAutomator, Espresso, Robolectric. Также рассматриваются обертки над ними Appium, Kakao, Barista и Kaspresso.
Хабр
На чем писать Android UI-тесты
Всем привет. Мы в Avokado Project продолжаем рассказывать про автотестирование в Android. Эта статья — обзор и сравнение существующих инструментов для написания...
#JetpackCompos
Decompose
Для всех кто использует Jetpack Compose и любит
Каждый Component:
👉 может иметь сколько угодно Router-ов;
👉 является LifecycleOwner, т.е. имеет жизненный цикл;
👉 может сохранять/восстанавливать состояние;
👉 является ViewModelStoreOwner - можно использовать ViewModel для продолжения работы при смене конфигурации;
👉 является
В настоящий момент проект активно развивается, но попробовать его можно уже сейчас.
Decompose
Для всех кто использует Jetpack Compose и любит
Fragment
, пригодится Decompose. Библиотека предоставляет две базовые сущности: Component
и Router
. Router - даёт возможность навигации.Каждый Component:
👉 может иметь сколько угодно Router-ов;
👉 является LifecycleOwner, т.е. имеет жизненный цикл;
👉 может сохранять/восстанавливать состояние;
👉 является ViewModelStoreOwner - можно использовать ViewModel для продолжения работы при смене конфигурации;
👉 является
OnBackPressedDispatcherOwner
, что даёт возможность обрабатывать нажатия кнопки "Назад".В настоящий момент проект активно развивается, но попробовать его можно уже сейчас.
GitHub
GitHub - arkivanov/Decompose: Kotlin Multiplatform lifecycle-aware business logic components (aka BLoCs) with routing (navigation)…
Kotlin Multiplatform lifecycle-aware business logic components (aka BLoCs) with routing (navigation) and pluggable UI (Jetpack Compose, SwiftUI, JS React, etc.) - GitHub - arkivanov/Decompose: Kotl...
#AndroidBroadcast #Kotlin #Compiler
Новый компилятор Kotlin в 1.4
Когда: Вторник, 8 сентября, 20:00 GMT+3
Команда Kotlin активно занимается переписыванием компилятора языка, чтобы ускорить его; объединить кодовую базу между JVM, Native и JS backend; открыть API плагинов компилятора и др. улучшения. В выпуске копаемся в изменениях под капотом компилятора и будущем.
Гость - Семён Огородник, Kotlin Compiler Frontend-IR (FIR) Tech Lead в JetBrains, Работает в Kotlin уже 4 года. До FIR работал в Kotlin IDE team, там успел позаниматься J2K, Completion и производительностью. Некоторое время поддерживал Dokka
Всем кому интересна тема рекомендую посмотреть выпуск "Kotlin 1.4: быстрее и лучше"
Новый компилятор Kotlin в 1.4
Когда: Вторник, 8 сентября, 20:00 GMT+3
Команда Kotlin активно занимается переписыванием компилятора языка, чтобы ускорить его; объединить кодовую базу между JVM, Native и JS backend; открыть API плагинов компилятора и др. улучшения. В выпуске копаемся в изменениях под капотом компилятора и будущем.
Гость - Семён Огородник, Kotlin Compiler Frontend-IR (FIR) Tech Lead в JetBrains, Работает в Kotlin уже 4 года. До FIR работал в Kotlin IDE team, там успел позаниматься J2K, Completion и производительностью. Некоторое время поддерживал Dokka
Всем кому интересна тема рекомендую посмотреть выпуск "Kotlin 1.4: быстрее и лучше"
#Fragment #DependecyInjection
The defective AndroidX FragmentFactory
Появление FragmentFactory позволяет отказаться от выполнения inject-а зависимостей в поля класса, а в Kotlin еще и отказаться от
По моему опыту граф прекрасно строился с помощью этого API и не было ситуации, чтобы я уперся в ограничения, о которых рассказывает автор. Возможно, мы строим разные графы зависимостей
The defective AndroidX FragmentFactory
Появление FragmentFactory позволяет отказаться от выполнения inject-а зависимостей в поля класса, а в Kotlin еще и отказаться от
lateinit
. Но это работает не для всех случаев, о которых автор статьи рассказывает.По моему опыту граф прекрасно строился с помощью этого API и не было ситуации, чтобы я уперся в ограничения, о которых рассказывает автор. Возможно, мы строим разные графы зависимостей
Medium
The defective AndroidX FragmentFactory
In this blog post I would like to express my disappointment in the AndroidX FragmentFactory. I will briefly describe what the…
#Resources #Optimizations #JakeWharton
Smaller APKs with resource optimization
В Android Gradle плагине 4.2 появится новая возможность.- оптимизация ресурсов. В статье Jake разбирает основы ее работы и результаты ее применения в популярных приложениях
Smaller APKs with resource optimization
В Android Gradle плагине 4.2 появится новая возможность.- оптимизация ресурсов. В статье Jake разбирает основы ее работы и результаты ее применения в популярных приложениях
#AOSP
Загрузка и сборка AOSP
Android - это открытый проект и любой может собрать свой Android ROM на основе исходного кода. В статье автор рассказывает как это сделать, чтобы не потратить уйму времени, ведь это не просто git clone сделать
Загрузка и сборка AOSP
Android - это открытый проект и любой может собрать свой Android ROM на основе исходного кода. В статье автор рассказывает как это сделать, чтобы не потратить уйму времени, ведь это не просто git clone сделать
Хабр
Загрузка и сборка AOSP
Решил поделиться своей инструкцией как собрать AOSP (Android Open Source Project). Эта инструкция будет полезна тем кто хочет посмотреть что-же внутри Android и...
#Android11 #Jetpack
WindowInsetsCompat
Для отображения UI вашего приложения важно взаимодействовать с системным интерфейсом. Например, понимать где показывается status bar и navigation bar, или в каких зонах может быть осуществлен жест навигации назад, которые появился в Android 10.
Для того чтобы сделать это удобнее в Android 11 значительно переработали API WindowInsets и делают его backport в Jetpack - WindowInsetsCompat. Минус - это все появится в AndroidX Core 1.5.0, которая сейчас в альфе, как и версия 1.4.0 🙂
WindowInsetsCompat
Для отображения UI вашего приложения важно взаимодействовать с системным интерфейсом. Например, понимать где показывается status bar и navigation bar, или в каких зонах может быть осуществлен жест навигации назад, которые появился в Android 10.
Для того чтобы сделать это удобнее в Android 11 значительно переработали API WindowInsets и делают его backport в Jetpack - WindowInsetsCompat. Минус - это все появится в AndroidX Core 1.5.0, которая сейчас в альфе, как и версия 1.4.0 🙂
Styling Android
WindowInsetsCompat
In March I wrote about some extremely nice updates to WindowInsets that were introduced in the Android 11 developer preview. I mentioned in that article that a Jetpack version would be coming for bac
#AndroidBroadcast #Kotlin
Начинаем обсуждать подкапотные особенности нового компилятора Kotlin вместе с Tech Lead команды "Kotlin Compiler Core". Подключайтесь youtu.be/S2--aYB2GiE
Начинаем обсуждать подкапотные особенности нового компилятора Kotlin вместе с Tech Lead команды "Kotlin Compiler Core". Подключайтесь youtu.be/S2--aYB2GiE
YouTube
Новый компилятор Kotlin в 1.4 // Kotlin Compiler IR // Плагины компиляторов
#AndroidBroadcast #Kotlin #Compiler
Команда Kotlin активно занимается переписыванием компилятора языка, чтобы ускорить его; объединить кодовую базу между JVM, Native и JS backend; открыть API плагинов компилятора и др. улучшения. В выпуске копаемся в изменениях…
Команда Kotlin активно занимается переписыванием компилятора языка, чтобы ускорить его; объединить кодовую базу между JVM, Native и JS backend; открыть API плагинов компилятора и др. улучшения. В выпуске копаемся в изменениях…
#Android11
Вышел стабильный релиз Android 11
Новая мажорная версии Android ОС уже стала распространяться по устройствам пользователей. Заметных изменений в ней не так много, а самые значительные:
👉 Введение Scoped Storage (для приложений с targetSdk=30+)
👉 Обновление выдачи и отзыва runtime permission
👉 Анимирование изменений приложения при появление клавиатуры
👉 Обновлённое API WindowInsets
👉 Notification Bubbles (аля работа с чатиками как в Facebook)
👉 Поддержка 5G
👉 Динамическая загрузка ресурсов во время работы приложения
👉 Утилита для проверки совместимости приложения
Также выход Android 11 значит что публиковать новые приложения можно только с targetSdk=29+ (Android 10 и более новые), а для существующих приложений есть время до конца октября
Вышел стабильный релиз Android 11
Новая мажорная версии Android ОС уже стала распространяться по устройствам пользователей. Заметных изменений в ней не так много, а самые значительные:
👉 Введение Scoped Storage (для приложений с targetSdk=30+)
👉 Обновление выдачи и отзыва runtime permission
👉 Анимирование изменений приложения при появление клавиатуры
👉 Обновлённое API WindowInsets
👉 Notification Bubbles (аля работа с чатиками как в Facebook)
👉 Поддержка 5G
👉 Динамическая загрузка ресурсов во время работы приложения
👉 Утилита для проверки совместимости приложения
Также выход Android 11 значит что публиковать новые приложения можно только с targetSdk=29+ (Android 10 и более новые), а для существующих приложений есть время до конца октября
Android Developers Blog
Turning it up to 11: Android 11 for developers
Posted by Stephanie Cuthbertson, Director, Product Management Android 11 is here! Today we’re pushing the source to the Android Open...
Также вы можете посмотреть разбор Android 11, который я сделал совместно с Android Dev Podcast.
YouTube
Разбор Android 11 Beta
#Android11 #Jetpack #Compose
Обзор недавно представленных новинок Android 11, Android Jetpack, Jetpack Compose, Google Play, Android Studio и др
Эксперты:
👨✈️ Кирилл Розов, Mobile Lead/Replika, автор "Android Broadcast Telegram", организатор Android Dev…
Обзор недавно представленных новинок Android 11, Android Jetpack, Jetpack Compose, Google Play, Android Studio и др
Эксперты:
👨✈️ Кирилл Розов, Mobile Lead/Replika, автор "Android Broadcast Telegram", организатор Android Dev…
#ViewBinding
Вышла версия 1.1.0 библиотеки ViewBindingPropertyDelegate в которой были добавлены новые способы создание делегата, что должно сделать синтаксис более изящным
Вышла версия 1.1.0 библиотеки ViewBindingPropertyDelegate в которой были добавлены новые способы создание делегата, что должно сделать синтаксис более изящным
#AndroidBroadcast #DeclarativeUI #JetpackCompose
Inkremental // Стабильный декларативный UI уже сегодня
Когда: четверг, 10 сентября, 20:00 (GMT+3)
Завтра будем обсуждать декларативный UI, его историю, принципы и подходы. В гостях у нас автор библиотеки Inkremental, которая уже сейчас на чистом Kotlin позволяет делать UI декларативно. Работает preview в Android Studio и это уже в проде!
Гость - Сергей Греков, Android Software Engineer в компании Issuu в Берлине. Разрабатывает мобильные приложения более 8 лет. Автор библиотеки Inkremental.
Inkremental // Стабильный декларативный UI уже сегодня
Когда: четверг, 10 сентября, 20:00 (GMT+3)
Завтра будем обсуждать декларативный UI, его историю, принципы и подходы. В гостях у нас автор библиотеки Inkremental, которая уже сейчас на чистом Kotlin позволяет делать UI декларативно. Работает preview в Android Studio и это уже в проде!
Гость - Сергей Греков, Android Software Engineer в компании Issuu в Берлине. Разрабатывает мобильные приложения более 8 лет. Автор библиотеки Inkremental.