Даты важных изменений в Android, к которым нужно успеть внести изменения в свои приложения.
📆1 апреля: Отключение Advertising ID
📆20 июля: Предоставление информации про Data Safety
📆Где-то в ноябре: Повышение Target Android SDK до 31
📆Конец года: Отключение Kotlin synthetics
Если что-то забыл – пишите в комментарии!
📆1 апреля: Отключение Advertising ID
📆20 июля: Предоставление информации про Data Safety
📆Где-то в ноябре: Повышение Target Android SDK до 31
📆Конец года: Отключение Kotlin synthetics
Если что-то забыл – пишите в комментарии!
Google
Advertising ID - Play Console Help
The advertising ID is a unique, user-resettable, and user-deletable ID for advertising, provided by Google Play services. It gives users better controls and provides developers with a simple, standard
Закон Конвея – это эмпирическое правило, согласно которому архитектура системы повторяет структуру команды, ее разрабатывающей. Возможности Kotlin Multiplatform по шарингу кода сильно влияют на то, как может быть организована команда разработки и как правильно поделить ответственности в кодовой базе. В статье рассказывается про один из возможных подходов.
DEV Community
Dividing Kotlin Multiplatform work in teams
Kotlin Multiplatform is a great way to share code between multiple platforms, but this new approach...
Разбор двух новых способов работать с модулями и компонентами в Koin с помощью koin-annotations и koin-ksp-compiler.
Medium
Koin Annotations
I’m pleased to share with you a new Koin project. The idea is to introduce a new way to declare components in Koin …
Интересный обзор языковых фичей и перфоманса Scala 3 в сравнении с Kotlin. Паттерн-матчинг, конечно, очень кайфовый.
Medium
Comparing implementations of the Monkey language VII: My name is 3… Scala 3
Previously
Официальная позиция JetBrains по Украине. Разработка в России прекращается.
The JetBrains Blog
JetBrains' Statement on Ukraine | The JetBrains Blog
We have already made our position very clear in regard to the invasion of Ukraine. We condemn the attacks of the Russian government, and we stand with the Ukrainian people, including our own colleagues and their families.
Работать напрямую с файлами последние годы приходится все реже. Обычно любое хранение данных по умолчанию находится где-то в облаке и закрыто API. Но если все-таки вам нужно будет поработать с ними напрямую, то держите статью про интересный подход к тестированию взаимодействий с файловой системой.
arturdryomov.dev
Testing Files without Files
Overview of fake VFS on JVM
Продолжение серии статей про техническое устройство Fleet – новой IDE от JetBrains. В этой части рассказывается, как работает редактор кода, его рендеринг и какие структуры данных используются под капотом.
The JetBrains Blog
Fleet Below Deck, Part II - Breaking down the editor | The Fleet Blog
This is a multipart series on building Fleet, a next generation IDE by JetBrains. Part I - Architecture OverviewPart II - Breaking down the editorPart III – State ManagementPart IV – Distributed Tr
Большой разбор того, как Anvil делает проще работу с Dagger:
- Хорошая поддержка модуляризации
- Уменьшение времени сборки
- Кастомные плагины
- Хорошая поддержка модуляризации
- Уменьшение времени сборки
- Кастомные плагины
Medium
Dagger + Anvil: Learning to Love Dependency Injection on Android
Dagger + Anvil has been working so well for us at Tonal that we wanted to share our learnings with the Android community.
Смотрите, какая кайфовая анимация и параллакс у карточки на Jetpack Compose! Код можно посмотреть тут.
Twitter
Prafull Mishra ⚒️
Here's another cool (or hot?) #JetpackCompose post 🔥🔥 An interactive parallax effect that rotates around in response to user's input gesture!🤩🎉 What do you peeps say? (Inspired from a Procreate+Playground post by @VPoltrack ) #AndroidDev #Kotlin #Android
Альфа-Инвестиции приглашают iOS/Android-разработчиков на One Day Offer 19 марта. Все этапы интервью – за один день, оффер — за сутки. Ваш уровень – middle/senior, опыт в коммерческой разработке – от двух лет.
Подать заявку
Подать заявку
Подборка частых вопросов про то, как писать Gradle плагины, разбор разных подходов к их реализации и типичных ошибок.
А если вы взялись писать свой плагин, то вот еще один материал про то, как его протестировать с помощью фреймворка TestKit.
А если вы взялись писать свой плагин, то вот еще один материал про то, как его протестировать с помощью фреймворка TestKit.
GitHub
GitHub - jjohannes/gradle-plugins-howto: How to write Gradle plugins - answers to common questions and alternative implementation…
How to write Gradle plugins - answers to common questions and alternative implementation solutions - jjohannes/gradle-plugins-howto
Вам приходилось писать собственные Gradle плагины?
Anonymous Poll
4%
Да, часто
15%
Да, но всего пару раз
13%
Только игрался с API, ничего серьезного не делал
59%
Нет
8%
Посмотреть результаты
Работа со скроллом в Compose не совсем очевидна. В статье автор делится тем, как правильно определять текущую позицию и скроллить к определенному элементу списка при появлении клавиатуры.
Хабр
Погружаемся в работу со скроллом в Jetpack Compose
В этой статье я хочу поделиться опытом работы со скроллом в приложении, написанном на Jetpack Compose. Какое-то время назад я решил, что надо попробовать Compose в деле и начал делать pet project...
Гайд по работе с Glance – новым фреймворком для создания AppWidgets и Tiles для Wear OS, построенным поверх рантайма Compose.
Medium
Demystifying Jetpack Glance for app widgets
We recently announced the first Alpha version of Glance, initially with support for AppWidgets and now for Tiles for Wear OS. This new…
Meta добавили в Infer новый статический анализатор, который умеет находить дедлоки в Java коде без его запуска. Ключевая особенность в том, что он хорошо умеет работать с огромными кодовыми базами. Особенно рекомендую почитать подробную бумагу с деталями реализации алгоритма его работы.
Engineering at Meta
An open source compositional deadlock detector for Android Java
What the research is: We’ve developed a new static analyzer that catches deadlocks in Java code for Android without ever running the code. What distinguishes our analyzer from past research is its …
Если вы страдаете от долгого времени сборки, то вам могут помочь эти советы:
- Часть 1
- Часть 2
- Часть 3
- Часть 1
- Часть 2
- Часть 3
Medium
10 ideas to improve your Gradle build times [Part I]
Reduce your Gradle build times on android & non-android projects with these great ideas
Изменениями модификатора
graphicsLayer
в Compose можно добиваться разных кайфовых анимаций. В статье на гифках показывается, какие эффекты вызывает изменение каждого из его свойств.Medium
Have Fun With Jetpack Compose GraphicsLayer Modifier
Create interesting animation with GraphicsLayer Modifier
Barista – обертка над Espresso, упрощающая написание и поддержку UI тестов. Среди ее фичей:
🤝 Много хелперов, делающих код поиска и взаимодействия с элементами более читаемым
📝Автоматический скролл перед взаимодействиями с View тогда, когда он необходим
🐞Простая настройка стратегий поведения для flaky тестов
🤝 Много хелперов, делающих код поиска и взаимодействия с элементами более читаемым
📝Автоматический скролл перед взаимодействиями с View тогда, когда он необходим
🐞Простая настройка стратегий поведения для flaky тестов
Medium
Barista — Enjoyable Espresso Android UI Tests
Barista makes developing UI tests faster, easier, and more predictable. Built on top of Espresso, it provides a simple and discoverable…
Команда Dropbox рассказывает, как они переписывали фичу по автоматической загрузке фотографий в облако с C++ на Kotlin. Архитектура дизайнилась с учетом следующих требований:
📌Надежность работы в бэкграунде
📌Скорость загрузки фото и низкое потребление ресурсов
В статье рассказывается, как конкретно выбирался стек технологий, с какими проблемами столкнулась команда при реализации модуля, его тестировании и выкатке.
📌Надежность работы в бэкграунде
📌Скорость загрузки фото и низкое потребление ресурсов
В статье рассказывается, как конкретно выбирался стек технологий, с какими проблемами столкнулась команда при реализации модуля, его тестировании и выкатке.
dropbox.tech
Making camera uploads for Android faster and more reliable
«Лаборатория Касперского» ищет C/C++ Developer for IoT (mobile)
Работа в «Лаборатории Касперского» — это не только масштабные задачи, но и приятные бонусы: бесплатное обучение, расширенный ДМС со стоматологией, спортзалы прямо в офисе, а еще — программа релокации для кандидатов из регионов и не только.
Если вы:
— имеете опыт программирования на Dart\Flutter;
— умеете программировать на C/C++ или Java/Kotlin;
— пробовали себя в мобильной разработке (Android\iOS) или хотите сделать это направление приоритетным,
то переходите по ссылке, чтобы ознакомиться с подробной информацией о вакансии и присоединиться к команде лучших экспертов.
Работа в «Лаборатории Касперского» — это не только масштабные задачи, но и приятные бонусы: бесплатное обучение, расширенный ДМС со стоматологией, спортзалы прямо в офисе, а еще — программа релокации для кандидатов из регионов и не только.
Если вы:
— имеете опыт программирования на Dart\Flutter;
— умеете программировать на C/C++ или Java/Kotlin;
— пробовали себя в мобильной разработке (Android\iOS) или хотите сделать это направление приоритетным,
то переходите по ссылке, чтобы ознакомиться с подробной информацией о вакансии и присоединиться к команде лучших экспертов.
careers.kaspersky.ru
Карьера в ЛК
Карьера в Лаборатории Касперского