Плагин через
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