Perfetto - интрумент для анализа stacktrace-ов. В статье разбирается как с ним работать в Android, также как в этом помогает библиотека Jetpack Tracing
#tooling
#tooling
👍30👎10🤔1
Google рассылает напоминание про сроки повышения targetSdk до 33 (Android 13). В этот раз дата для всех приложений - до конца августа 2023
В этот раз важным нововведением становится что если ваше приложения будет иметь targetSdk 30 (Android 11) или ниже после 1 ноября 2023 такие приложения в Google Play можно будет увидеть в поиске и каталог только на Android 11 и ниже. Переход по прямой ссылке будет работать.
Полностью поддерживаю данное изменение! Что считаете вы?
#googleplay
В этот раз важным нововведением становится что если ваше приложения будет иметь targetSdk 30 (Android 11) или ниже после 1 ноября 2023 такие приложения в Google Play можно будет увидеть в поиске и каталог только на Android 11 и ниже. Переход по прямой ссылке будет работать.
Полностью поддерживаю данное изменение! Что считаете вы?
#googleplay
👍71👎13
Вышла Java 20
👉 Data Records (Превью)
👉 Паттерн-матчинг для switch (Превью)
👉 Виртуальные потоки они же Project Loom (Превью) - аналог Kotlin корутин
👉 Scoped Values (Инкубатор) - позволяет обмениваться иммутабельными данными без их передачи через аргументы методов
👉 Structured Concurrency (Инкубатор) - объединение несколько задач в разных потоках в единую работу
👉 Foreign Function & Memory API (Превью)
👉 Vector API (Инкубатор)
#java
👉 Data Records (Превью)
👉 Паттерн-матчинг для switch (Превью)
👉 Виртуальные потоки они же Project Loom (Превью) - аналог Kotlin корутин
👉 Scoped Values (Инкубатор) - позволяет обмениваться иммутабельными данными без их передачи через аргументы методов
👉 Structured Concurrency (Инкубатор) - объединение несколько задач в разных потоках в единую работу
👉 Foreign Function & Memory API (Превью)
👉 Vector API (Инкубатор)
#java
🤔23🤯12👎9👍7🔥5
Mitigating soft verification issues in R8 and D8 (11 мин)
В AGP для D8 и R8 добавляют поддержку api-modeling - фича для более быстрой обработка AOT файлов для ART VM. Суть заключается в том чтобы оптимизировать обращения к API из Android SDK таким образом, чтобы как можно больше кода могло быть прогретым для ART на старых версиях Android. Это позволяет ускорить старт приложений (от 2% до 24% по тестам в статье), но увеличивает размер dex файлов ( до 20%).
api-modeling невозможно будет выключить в будущих версиях D8 и R8 по умолчанию
#art #performance
В AGP для D8 и R8 добавляют поддержку api-modeling - фича для более быстрой обработка AOT файлов для ART VM. Суть заключается в том чтобы оптимизировать обращения к API из Android SDK таким образом, чтобы как можно больше кода могло быть прогретым для ART на старых версиях Android. Это позволяет ускорить старт приложений (от 2% до 24% по тестам в статье), но увеличивает размер dex файлов ( до 20%).
api-modeling невозможно будет выключить в будущих версиях D8 и R8 по умолчанию
#art #performance
👍13👎9❤1🔥1
История улучшения производительности Dribbble, который переписали на Jetpack Compose ( 8 мин).
#compose #performance
#compose #performance
👍30👎8❤2
Вышел Compose 1.4 Stable
👉 Появился Pager
👉 Новые Layout FlowRow и FlowColumn
👉 Ускорение работы Modifier
👉 compose-text: ускорение работы, стабилизация, исправление багов и поддержка самых свежих эмоджи. 👉 Решена боль использования TextField в некоторых сценариях со скроллом
👉 Множество новых возможностей кастомизации показ текста
👉 Улучшение в базовым API
🛠 Исправление багов
Также обновили roadmap по развитию Compose и вышел Accompanist 0.30.0 с поддержкой свежей версии Compose
#compose
👉 Появился Pager
👉 Новые Layout FlowRow и FlowColumn
👉 Ускорение работы Modifier
👉 compose-text: ускорение работы, стабилизация, исправление багов и поддержка самых свежих эмоджи. 👉 Решена боль использования TextField в некоторых сценариях со скроллом
👉 Множество новых возможностей кастомизации показ текста
👉 Улучшение в базовым API
🛠 Исправление багов
Также обновили roadmap по развитию Compose и вышел Accompanist 0.30.0 с поддержкой свежей версии Compose
#compose
🔥66👍11👎8❤1😢1
Новый Stable Google - не всегда уже такой и Stable 😁. Давайте устроим перекличку на проблемы новой версии Jetpack Compose 1.4
👉 Если вы с ними столкнулись ставьте 👎 и пишите что работает плохо
👉 Если "ваши тесты прошёл" ок с релизом и вы проверили - ставьте 👍.
👉 Если просто нравится пост - ❤️ или 🔥
Также буду рад вашим историям решения проблем из коробки в новом релизе
Ну и нужно помнить что @android_broadcast - место где части подписчиков просто не нравится всё и 👎 может появится из вредности
#compose
👉 Если вы с ними столкнулись ставьте 👎 и пишите что работает плохо
👉 Если "ваши тесты прошёл" ок с релизом и вы проверили - ставьте 👍.
👉 Если просто нравится пост - ❤️ или 🔥
Также буду рад вашим историям решения проблем из коробки в новом релизе
Ну и нужно помнить что @android_broadcast - место где части подписчиков просто не нравится всё и 👎 может появится из вредности
#compose
❤77👎30👍15🔥13🤯6
Подробный разбор что нового в Gradle 8.0
👉 Скорость работы и сборки
👉 Удобство пользователей
👉 Обновление зависимостей
#gradle
👉 Скорость работы и сборки
👉 Удобство пользователей
👉 Обновление зависимостей
#gradle
👍24👎7🔥1
Интервью
📺 The Circuit – Compose-driven Architecture for Kotlin and Android | Talking Kotlin #121 (1 час)
📺 Jetpack Compose Text Hyphenation and more (2 часа)
Разборы
📺 The FULL Beginner to Pro Roadmap for Android Development in 2023 (11 мин)
Новости
📺 Now in Android #79 (3 мин)
📺 AI доминируют || Новости разработки 2023.8 (20 мин)
Лекции
📺 AA Jetpack Compose #5: UI Testing (1.5 часа)
📺 AA Jetpack Compose #5: UI Testing. Practice (1 час)
Делитесь в комментариях видео по разработке, которые вам понравились на этой неделе
#подборкавидео
📺 The Circuit – Compose-driven Architecture for Kotlin and Android | Talking Kotlin #121 (1 час)
📺 Jetpack Compose Text Hyphenation and more (2 часа)
Разборы
📺 The FULL Beginner to Pro Roadmap for Android Development in 2023 (11 мин)
Новости
📺 Now in Android #79 (3 мин)
📺 AI доминируют || Новости разработки 2023.8 (20 мин)
Лекции
📺 AA Jetpack Compose #5: UI Testing (1.5 часа)
📺 AA Jetpack Compose #5: UI Testing. Practice (1 час)
Делитесь в комментариях видео по разработке, которые вам понравились на этой неделе
#подборкавидео
❤9👎7👍4🔥1
Открыли записи предыдущего Mobius. Посмотреть их можно на сайте конференции бесплатно, но надо будет аторизоваться
👍33👎11🔥2
Обновление Android Jetpack от 22 марта 2023
👉 Activity 1.7.0 - улушчение поддержки Compose
👉 DrawerLayout 1.2.0 - поддержка Predictive Back Gesture из Android 13
👉 Генерация Kotlin кода в новой версии Room (пока альфа)
👉 Annotations 1.7.0 стали мультиплатформенными с поддержкой Android, iOS, Linux и macOS
👉 На Android таргеты в KMP DataStore влили в основную ветку и можно пробовать подключать зависимость в KMM проекты. Также в основную ветку перекочевала и поддержка нескольких процессов.
👉 Emoji2 1.3.0 c лучшей поддержкой Compose
👉 ProfileInstaller 1.3.0 - улучшение поддержки работы с профилями и интеграцией с performance тестами
🛠 Исправление багов в Fragment, CameraX, Room 2.5, WebKit
#jetpack #jetpackupdate
👉 Activity 1.7.0 - улушчение поддержки Compose
👉 DrawerLayout 1.2.0 - поддержка Predictive Back Gesture из Android 13
👉 Генерация Kotlin кода в новой версии Room (пока альфа)
👉 Annotations 1.7.0 стали мультиплатформенными с поддержкой Android, iOS, Linux и macOS
👉 На Android таргеты в KMP DataStore влили в основную ветку и можно пробовать подключать зависимость в KMM проекты. Также в основную ветку перекочевала и поддержка нескольких процессов.
👉 Emoji2 1.3.0 c лучшей поддержкой Compose
👉 ProfileInstaller 1.3.0 - улучшение поддержки работы с профилями и интеграцией с performance тестами
🛠 Исправление багов в Fragment, CameraX, Room 2.5, WebKit
#jetpack #jetpackupdate
👍17👎8🔥1
Activity 1.7.0
👉 Activity Contract PickVisualMedia и PickMultipleVisualMedia для выбора медиа открывает Photo Picker или Document Provider (если первый недоступен) на всех устройствах с Android 4.4 и выше
👉 ComponentDialog можно использовать с Jetpack Compose
👉 Часть API переписали на Kotlin
👉 FullyDrawnReporter - API для того чтобы сообщать компонентам о том что они готовы к взаимодействию. Используется в тестировании и Compose
#jetpack #jetpackupdate
👉 Activity Contract PickVisualMedia и PickMultipleVisualMedia для выбора медиа открывает Photo Picker или Document Provider (если первый недоступен) на всех устройствах с Android 4.4 и выше
👉 ComponentDialog можно использовать с Jetpack Compose
👉 Часть API переписали на Kotlin
👉 FullyDrawnReporter - API для того чтобы сообщать компонентам о том что они готовы к взаимодействию. Используется в тестировании и Compose
#jetpack #jetpackupdate
👍17👎9
DrawerLayout 1.2.0
👉 Поддержка OnBackPressedInvoked из Android 13
👉 Исправлена работа
#jetpack #jetpackupdate
👉 Поддержка OnBackPressedInvoked из Android 13
👉 Исправлена работа
open
и close
когда drawer заблокирован#jetpack #jetpackupdate
👍10👎9
Room 2.6.0-alpha01
👉 Поддержка value классов в KSP
👉 Добавлена возможность генерации Kotlin кода в Room. Добавляйте
#jetpack #jetpackupdate
👉 Поддержка value классов в KSP
👉 Добавлена возможность генерации Kotlin кода в Room. Добавляйте
room.generateKotlin
в опции KSP процессора. Подробности тут#jetpack #jetpackupdate
👍17👎7🎉7
Вышла Jetpack Media3 - набор библиотек для реализации работы с медиа в Android: проигрывание видео и аудио, управление медиа сессий и другие. Новая версия библиотека объединила в себе самое лучшее из ExoPlayer, MediaCompat и Media2
В статье разбирают Playback API для проигрывания аудио и видео.
ExoPlayer теперь стал частью Jetpack Media, а отдельный пакет
#jetpack #media
В статье разбирают Playback API для проигрывания аудио и видео.
ExoPlayer теперь стал частью Jetpack Media, а отдельный пакет
com.google.android.exoplayer2
скоро будет остановлен в разработке, а все обновления перейдут в свежую библиотеку. ExoPlayer 2.18.5
и Media3 1.0.0
полностью одинаковые по возможностям и лишь отличаются пакетом. Media3 также упрощает интеграцию сторонних плееров, отличных от ExoPlayer.#jetpack #media
🔥56👍8👎8
Команда Google Play предотвратила мошеннические транзакции на 2 миллиарда долларов за 2022 год
Команда разработчиков рекомендует защищать свои приложения с помощью 2 API:
👉 Voided Purchases API - предоставляет доступ к тем встроенным покупкам и подпискам, которые оформлял пользователь
👉 Obfuscated Account ID - защита от покупок из под одного и того же аккаунта со множества устройств
#googleplay
Команда разработчиков рекомендует защищать свои приложения с помощью 2 API:
👉 Voided Purchases API - предоставляет доступ к тем встроенным покупкам и подпискам, которые оформлял пользователь
👉 Obfuscated Account ID - защита от покупок из под одного и того же аккаунта со множества устройств
#googleplay
👍30👎6🤔1
"Не прогревайте фичи приложения" (7 мин). Такая статья вышла в блоге Android Dev с целью разгрузить старт приложения. При запуске приложения и так происходит много работы, которая нагружает все железо как у убер флагманов так и обычных решений.
Как решение рекомендуется Jetpack App Startup, чтобы организовать инициализацию и распределить нагрузку.
#performance
Как решение рекомендуется Jetpack App Startup, чтобы организовать инициализацию и распределить нагрузку.
#performance
👍24👎7🤔7🔥2❤1