#Compose #Android #Remote #BDUI
Please open Telegram to view this post
VIEW IN TELEGRAM
Плагин через
ComponentMetadataRule подвешивает available-at вариант с tvOS-klib к официальному org.jetbrains.compose.*. Дальше решает штатный variant resolution Gradle: tvOS-таргет забирает форк, а iOS/Android/Desktop продолжают резолвить артефакт JetBrains. Отдельно перехватывается маркер плагина через
pluginManagement.resolutionStrategy.eachPlugin, чтобы работала упаковка Compose Resources.// settings.gradle.kts
plugins {
id("dev.sajidali.compose-tvos") version "1.3.0"
}
Всё,
dependencies {} не меняешь. Приём годится далеко за пределами tvOS: так же можно подсунуть свою пересборку любой чужой библиотеки, у которой не хватает таргета.⚠️ Под капотом форк 15 групп библиотек Compose и AndroidX, опубликованный одним человеком. Автор прямо пишет, что тянет его ровно настолько, насколько нужно для собственного приложения: ни обязательств, ни расписания релизов. Держать
compose.runtime и compose.ui в проде из такого источника решение уровня «мы понимаем, на что подписались». Форк сейчас держит линию 1.12, но догонять апстрим ему придётся рукамиСмотреть стоит ради механики. Тащить в прод - явным фанатам поддержки tvOS из CMP.
#Compose #ComposeMultiplatform #KMP #Gradle
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Следит за теми Composable где проведете инициализацию
@Composable
fun UserProfileCard(user: User) {
Card(
modifier = Modifier
.fillMaxWidth()
// Attach highlighter
.recompositionHighlighter("UserProfileCard")
) {
Text(text = user.name)
}
}
#Compose
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Aurora Developers
🚀 Вышла новая альфа-версия адаптации CMP для ОС Аврора (v0.0.5)
Прошёл квартал — а значит, вышла новая альфа-версия адаптации CMP для ОС Аврора. Рассказываем, что изменилось.
🛠 Инструментарий разработчика
- Плагин для IntelliJ IDEA для быстрого старта
- Автопринятие разрешений при запуске приложений
- Возможность указать дополнительные файлы при сборке RPM
✨ Расширение возможностей фреймворка
- Создания обложек приложения используя Compose
- Открытие URI с системным диалогом выбора приложения
- Поддержка ориентаций приложения
- Новая библиотека адаптивных иконок ОС Аврора
- Полная поддержка экранной клавиатуры — предиктивный ввод и автокоррекция
🚗 Аврора автомобильная
- Поддержка обложек/виджетов
- Улучшена стабильность работы фреймворка
📱 Референсные приложения
- Новое демо-приложение «Погода»
- Темплейт для быстрого старта разработки
- Обновление всех демострационных приложений
✅ Качество и стабильность
- Исправления и общая стабилизация фреймворка
Новая версия уже доступна для разработчиков.
Пробуйте прямо сейчас — все примеры и API в документации.
👉 Документация
Проект по адаптации CMP для ОС Аврора продолжает развиваться как открытый проект на mos.hub — присоединяйтесь к разработке, чтобы внести свой вклад и повлиять на будущее фреймворка. Мы открыты к вашему коду и экспертизе. Только #ВМЕСТЕ мы сможем сделать инструмент максимально полезным для всего сообщества.
👉 Репозиторий
Прошёл квартал — а значит, вышла новая альфа-версия адаптации CMP для ОС Аврора. Рассказываем, что изменилось.
🛠 Инструментарий разработчика
- Плагин для IntelliJ IDEA для быстрого старта
- Автопринятие разрешений при запуске приложений
- Возможность указать дополнительные файлы при сборке RPM
✨ Расширение возможностей фреймворка
- Создания обложек приложения используя Compose
- Открытие URI с системным диалогом выбора приложения
- Поддержка ориентаций приложения
- Новая библиотека адаптивных иконок ОС Аврора
- Полная поддержка экранной клавиатуры — предиктивный ввод и автокоррекция
🚗 Аврора автомобильная
- Поддержка обложек/виджетов
- Улучшена стабильность работы фреймворка
📱 Референсные приложения
- Новое демо-приложение «Погода»
- Темплейт для быстрого старта разработки
- Обновление всех демострационных приложений
✅ Качество и стабильность
- Исправления и общая стабилизация фреймворка
Новая версия уже доступна для разработчиков.
Пробуйте прямо сейчас — все примеры и API в документации.
👉 Документация
Проект по адаптации CMP для ОС Аврора продолжает развиваться как открытый проект на mos.hub — присоединяйтесь к разработке, чтобы внести свой вклад и повлиять на будущее фреймворка. Мы открыты к вашему коду и экспертизе. Только #ВМЕСТЕ мы сможем сделать инструмент максимально полезным для всего сообщества.
👉 Репозиторий
В Issue CMP-10781 в официальном баг-трекере CMP Константин Цховребов расписал рецепт офлайн-приложения Compose Web: после Gradle-задачи
wasmJsBrowserDistribution отдельная задача (исходный код в issue) копирует статику, вычисляет SHA-256 по путям и содержимому и генерирует service-worker.js.Что получается на практике:
👉
index.html, JS, Wasm и Compose Resources кладутся в Cache Storage👉 SW перехватывает только эти файлы
👉 запросы к API идут в сеть как обычно
👉 новая сборка меняет версию кэша и удаляет старый
Ограничения:
👉
cache.addAll() падает, если не скачался хотя бы один файл из списка👉 source maps тоже попадают в кэш, если не отфильтровать
👉 новая версия подхватится только при следующем запуске
Это не официальная задача в плагине CMP и не «PWA из коробки», а лишь рецепт, который вполне может стать частью официального плагина в будущем.
#Compose #CMP #Wasm
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Полезно как для людей, так и для разработки с AI агентами, так как не приходится прокликивать приложение до экрана при каждых изменениях, что экономит токены.
💰Решение платное - 5$/месяц, есть триал на 2 недели.
#Compose #CMP #Android #Desktop #iOS
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Из плюсов - всё open source и на современном стеке Compose Multiplatform и Kotlin Multiplatform с с поддержкой Android, iOS, Desktop
🔗 Можно поставить из
#Compose #Android #Desktop #iOS #Пример
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Modifier.hazeGlass(
input = HazeInput.Sources(hazeState),
style = GlassStyle.regular.then {
shape(RoundedCornerShape(20.dp))
tint(Color.White.copy(alpha = 0.16f))
},
)
🔗 Документация библиотеки
🔗 Бенчмарки как работают эффекты
🔗 Миграция с Haze 1.0 на 2.0
#Compose #CMP
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM