После добавления импорта в мой проект Wear OS моему приложению не нравится то, что я добавил. Кто -нибудь знает, что пошло не так? Я пытаюсь убедиться, что мой проект использует материал 3 (где это возможно) и библиотеку гохологов (где это возможно).
ошибка logcat
Неудачное разрешение: landroidx/wear/compose/foundation/hierarchicalfocuscoordinatorkt; Не нашел класс "androidx.wear.compose.foundation.hierarchicalfocuscoordinatorkt"
Strong> build.gradle.kts (: app)
plugins {
alias(libs.plugins.android.application)
alias(libs.plugins.kotlin.android)
alias(libs.plugins.kotlin.compose) }
android {
namespace = "com.example.playground1w"
compileSdk = 35
defaultConfig {
applicationId = "com.example.playground1w"
minSdk = 31
targetSdk = 35
versionCode = 1
versionName = "1.0"
}
buildTypes {
release {
isMinifyEnabled = true
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = "11"
}
buildFeatures {
compose = true
} }
dependencies {
implementation(libs.play.services.wearable)
implementation(platform(libs.compose.bom))
implementation(libs.ui)
implementation(libs.ui.graphics)
implementation(libs.ui.tooling.preview)
implementation(libs.wear.compose.foundation)
implementation(libs.wear.tooling.preview)
implementation(libs.activity.compose)
implementation(libs.core.splashscreen)
implementation(libs.wear.compose.material3)
implementation(libs.horologist.compose.layout)
androidTestImplementation(platform(libs.compose.bom))
androidTestImplementation(libs.ui.test.junit4)
debugImplementation(libs.ui.tooling)
debugImplementation(libs.ui.test.manifest) }
libs.version.toml
[versions]
agp = "8.9.2"
kotlin = "2.0.21"
playServicesWearable = "19.0.0"
composeBom = "2025.04.01"
wearToolingPreview = "1.0.0"
activityCompose = "1.10.1"
coreSplashscreen = "1.0.1"
horologist-compose-layout = "0.7.12-alpha"
wear-compose-material3 = "1.0.0-alpha37"
wear-compose-foundation = "1.5.0-alpha14"
horologist = "0.6.23"
[libraries]
play-services-wearable = { group = "com.google.android.gms", name = "play-services-wearable", version.ref = "playServicesWearable" }
compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" }
ui = { group = "androidx.compose.ui", name = "ui" }
ui-graphics = { group = "androidx.compose.ui", name = "ui-graphics" }
ui-tooling = { group = "androidx.compose.ui", name = "ui-tooling" }
ui-tooling-preview = { group = "androidx.compose.ui", name = "ui-tooling-preview" }
ui-test-manifest = { group = "androidx.compose.ui", name = "ui-test-manifest" }
ui-test-junit4 = { group = "androidx.compose.ui", name = "ui-test-junit4" }
wear-tooling-preview = { group = "androidx.wear", name = "wear-tooling-preview", version.ref = "wearToolingPreview" }
activity-compose = { group = "androidx.activity", name = "activity-compose", version.ref = "activityCompose" }
core-splashscreen = { group = "androidx.core", name = "core-splashscreen", version.ref = "coreSplashscreen" }
wear-compose-material3 = { group = "androidx.wear.compose", name = "compose-material3", version.ref = "wear-compose-material3" }
wear-compose-foundation = { group = "androidx.wear.compose", name = "compose-foundation", version.ref = "wear-compose-foundation" }
horologist-compose-layout = { group = "com.google.android.horologist", name = "horologist-compose-layout", version.ref = "horologist-compose-layout" }
horologist-compose-material = { module = "com.google.android.horologist:horologist-compose-material", version.ref = "horologist" }
[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }
kotlin-android = { id = "org.jetbrains.kotlin.android", version.ref = "kotlin" }
kotlin-compose = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
mainactivity.kt
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.wrapContentSize
import androidx.compose.runtime.Composable
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import androidx.compose.ui.tooling.preview.Preview
import androidx.core.splashscreen.SplashScreen.Companion.installSplashScreen
import androidx.wear.tooling.preview.devices.WearDevices
import com.example.playground1w.presentation.theme.Playground1WTheme
import com.google.android.horologist.annotations.ExperimentalHorologistApi
import com.google.android.horologist.compose.layout.AppScaffold
import com.google.android.horologist.compose.layout.ScalingLazyColumn
import com.google.android.horologist.compose.layout.ScalingLazyColumnDefaults
import com.google.android.horologist.compose.layout.ScalingLazyColumnDefaults.ItemType
import com.google.android.horologist.compose.layout.ScreenScaffold
import com.google.android.horologist.compose.layout.rememberResponsiveColumnState
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
installSplashScreen()
super.onCreate(savedInstanceState)
setContent {
WearApp()
}
}
}
@OptIn(ExperimentalHorologistApi::class)
@Composable
fun WearApp() {
Playground1WTheme {
AppScaffold {
val listState = rememberResponsiveColumnState(
contentPadding = ScalingLazyColumnDefaults.padding(
first = ItemType.SingleButton,
last = ItemType.Chip,
),
)
val contentModifier = Modifier.fillMaxWidth().padding(bottom = 8.dp)
val iconModifier = Modifier.size(24.dp).wrapContentSize(align = Alignment.Center)
ScreenScaffold(
scrollState = listState,
) {
ScalingLazyColumn(
columnState = listState,
) {
}
}
}
}
}
Подробнее здесь: https://stackoverflow.com/questions/795 ... l-3-and-ho
Иерархическая ошибка фокусировки Координатор ⇐ Android
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение