最近,当使用新的Android SDK创建kotlin项目时,我遇到了以下代码。
implementation("androidx.core:core-ktx:1.12.0")
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.7.0")
implementation("androidx.activity:activity-compose:1.8.2")
implementation(platform("androidx.compose:compose-bom:2023.08.00"))
implementation("androidx.compose.ui:ui")
implementation("androidx.compose.ui:ui-graphics")
implementation("androidx.compose.ui:ui-tooling-preview")
implementation("androidx.compose.material3:material3")
什么是 compose-bom,为什么“androidx.compose.ui:ui”没有指定版本??
BOM(Bill of Materials)
BOM 是一个平台,也是一种特殊的依赖项,用于获取 Compose 推荐的依赖项版本。 有必要包含必要的 Compose 类库,但不需要指定版本, 因为指定版本会覆盖 BOM 建议的版本。 BOM 确保所有版本都能正常工作。 将 BOM 更新到最新版本就会自动更新所有 Compose 依赖项。 如果有 Compose 项目,建议使用 BOM 来管理 Compose 依赖项。