Compose Compiler
最近更新时间 | 稳定版 | 候选版本 | Beta 版 | Alpha 版 |
---|---|---|---|---|
2022 年 5 月 11 日 | 1.1.1 | - | 1.2.0-beta01 | - |
结构
Compose 由 androidx
中的 7 个 Maven 组 ID 构成。每个组都包含一套特定用途的功能,并各有专属的版本说明。
下表介绍了各个组及指向其版本说明的链接。
组 | 说明 |
---|---|
compose.animation | 在 Jetpack Compose 应用中构建动画,丰富用户的体验。 |
compose.compiler | 借助 Kotlin 编译器插件,转换 @Composable functions(可组合函数)并启用优化功能。 |
compose.foundation | 使用现成可用的构建块编写 Jetpack Compose 应用,还可扩展 Foundation 以构建您自己的设计系统元素。 |
compose.material | 使用现成可用的 Material Design 组件构建 Jetpack Compose UI。这是更高层级的 Compose 入口点,旨在提供与 www.material.io 上描述的组件一致的组件。 |
compose.material3 | 使用 Material Design 3(下一代 Material Design)组件构建 Jetpack Compose 界面。Material 3 包括更新后的主题和组件,以及动态配色等 Material You 个性化功能,旨在与新的 Android 12 视觉风格和系统界面相得益彰。 |
compose.runtime | Compose 的编程模型和状态管理的基本构建块,以及 Compose 编译器插件针对的核心运行时。 |
compose.ui | 与设备互动所需的 Compose UI 的基本组件,包括布局、绘图和输入。 |
声明依赖项
如需添加 Compose 的依赖项,您必须将 Google Maven 代码库添加到项目中。如需了解详情,请参阅 Google 的 Maven 代码库。
在应用或模块的 build.gradle
文件中添加所需工件的依赖项:
Groovy
android { buildFeatures { compose true } composeOptions { kotlinCompilerExtensionVersion = "1.2.0-beta02" } kotlinOptions { jvmTarget = "1.8" } }
Kotlin
android { buildFeatures { compose = true } composeOptions { kotlinCompilerExtensionVersion = "1.2.0-beta02" } kotlinOptions { jvmTarget = "1.8" } }
如需详细了解依赖项,请参阅添加 build 依赖项。
反馈
您的反馈将帮助我们改进 Jetpack。如果您发现了新问题,或对此库的改进有自己的见解,请告诉我们。创建新问题前,请先查看此库中的现有问题。您可以点击星标按钮,为现有问题投票。
如需了解详情,请参阅问题跟踪器文档。
版本 1.2
版本 1.2.0-beta01
2022 年 5 月 11 日
发布了 androidx.compose.compiler:compiler:1.2.0-beta01
。版本 1.2.0-beta01 中包含这些提交内容。
- 这是 1.2 的第一个 Beta 版!与上个 Alpha 版相比没有变化。
新功能
- 增加了对 Kotlin
1.6.21
的支持
版本 1.2.0-alpha08
2022 年 4 月 20 日
发布了 androidx.compose.compiler:compiler:1.2.0-alpha08
。版本 1.2.0-alpha08 中包含这些提交内容。
版本 1.2.0-alpha07
2022 年 4 月 6 日
发布了 androidx.compose.compiler:compiler:1.2.0-alpha07
。版本 1.2.0-alpha07 中包含这些提交内容。
版本 1.2.0-alpha06
2022 年 3 月 23 日
发布了 androidx.compose.compiler:compiler:1.2.0-alpha06
。版本 1.2.0-alpha06 中包含这些提交内容。
版本 1.2.0-alpha05
2022 年 3 月 9 日
发布了 androidx.compose.compiler:compiler:1.2.0-alpha05
。版本 1.2.0-alpha05 中包含这些提交内容。
版本 1.2.0-alpha04
2022 年 2 月 23 日
发布了 androidx.compose.compiler:compiler:1.2.0-alpha04
。版本 1.2.0-alpha04 中包含这些提交内容。
版本 1.2.0-alpha03
2022 年 2 月 9 日
发布了 androidx.compose.compiler:compiler:1.2.0-alpha03
。版本 1.2.0-alpha03 中包含这些提交内容。
版本 1.2.0-alpha02
2022 年 1 月 26 日
发布了 androidx.compose.compiler:compiler:1.2.0-alpha02
。版本 1.2.0-alpha02 中包含这些提交内容。
版本 1.2.0-alpha01
2022 年 1 月 12 日
发布了 androidx.compose.compiler:compiler:1.2.0-alpha01
。版本 1.2.0-alpha01 中包含这些提交内容。
新功能
- 增加了对 Kotlin
1.6.10
的支持。
版本 1.1
版本 1.1.1
2022 年 2 月 23 日
发布了 androidx.compose.compiler:compiler:1.1.1
。版本 1.1.1 中包含这些提交内容。
bug 修复
- 修复了
androidx.compose.ui.platform.RenderNodeLayer.updateDisplayList
中的NullPointerException
(aosp/1947059、b/206677462) - 修复了在 Android 上从剪贴板读取内容时剪贴板内容导致的崩溃问题。(I06020、b/197769306)
- 修复了
LazyVerticalGrid
中的 RTL(aosp/1931080、b/207510535)
版本 1.1.0
2022 年 2 月 9 日
发布了 androidx.compose.compiler:compiler:1.1.0
。版本 1.1.0 中包含这些提交内容。
自 1.0.0 以来的重要变更
- 对 Android 12 滚动效果提供稳定支持
- 改进了触摸目标大小调整
- 请注意,对于 Compose 1.0,Material 组件将扩展其布局空间,以符合 Material 无障碍功能指南对触摸目标尺寸的要求。例如,按钮触摸目标将扩展为至少
48x48dp
的尺寸,即使您将按钮尺寸设为更小也是如此。这会使 Compose Material 与 Material Design 组件的行为保持一致,以便在混合使用 View 和 Compose 时提供一致的行为。此变更还可确保在您使用 Compose Material 组件创建界面时,能够满足触摸目标无障碍功能的最低要求。 - 对导航栏提供稳定支持
- 将之前的一些实验性 API 升级到了稳定版
- 支持更高版本的 Kotlin
版本 1.1.0-rc03
2022 年 1 月 26 日
发布了 androidx.compose.compiler:compiler:1.1.0-rc03
。版本 1.1.0-rc03 中包含这些提交内容。
bug 修复
- 已更新为支持 Compose Material 1.1.0-rc03
版本 1.1.0-rc02
2021 年 12 月 16 日
发布了 androidx.compose.compiler:compiler:1.1.0-rc02
。版本 1.1.0-rc02 中包含这些提交内容。
依赖项更新
- Compose 编译器
1.1.0-rc02
与 Kotlin1.6.10
兼容。
版本 1.1.0-rc01
2021 年 12 月 15 日
发布了 androidx.compose.compiler:compiler:1.1.0-rc01
。版本 1.1.0-rc01 中包含这些提交内容。
依赖项变更
- Compose 编译器
1.1.0-rc01
与 Kotlin1.6.0
兼容。 可通过
buildId
为 8003490 的 androidx.dev SNAPSHOT 提供兼容的1.6.10
build。以下依赖项代码段将为 Compose 编译器配置 SNAPSHOT:将以下代码段添加到项目的根
build.gradle
文件中:buildscript { repositories { google() jcenter() maven { url 'https://androidx.dev/snapshots/builds/8003490/artifacts/repository' } } }
将以下代码段添加到使用 Compose 的应用或模块的
build.gradle
文件中:android { composeOptions { kotlinCompilerExtensionVersion = "1.2.0-SNAPSHOT" } }
版本 1.1.0-beta04
2021 年 12 月 1 日
发布了 androidx.compose.compiler:compiler:1.1.0-beta04
。版本 1.1.0-beta04 中包含这些提交内容。
新功能
- 进行了更新,现在与 Kotlin
1.6.0
兼容
版本 1.1.0-beta03
2021 年 11 月 17 日
发布了 androidx.compose.compiler:compiler:1.1.0-beta03
。版本 1.1.0-beta03 中包含这些提交内容。
版本 1.1.0-beta02
2021 年 11 月 3 日
发布了 androidx.compose.compiler:compiler:1.1.0-beta02
。版本 1.1.0-beta02 中包含这些提交内容。
版本 1.1.0-beta01
2021 年 10 月 27 日
发布了 androidx.compose.compiler:compiler:1.1.0-beta01
。版本 1.1.0-beta01 中包含这些提交内容。
版本 1.1.0-alpha06
2021 年 10 月 13 日
发布了 androidx.compose.compiler:compiler:1.1.0-alpha06
。版本 1.1.0-alpha06 中包含这些提交内容。
版本 1.1.0-alpha05
2021 年 9 月 29 日
发布了 androidx.compose.compiler:compiler:1.1.0-alpha05
。版本 1.1.0-alpha05 中包含这些提交内容。
版本 1.1.0-alpha04
2021 年 9 月 15 日
发布了 androidx.compose.compiler:compiler:1.1.0-alpha04
。版本 1.1.0-alpha04 中包含这些提交内容。
版本 1.1.0-alpha03
2021 年 9 月 1 日
发布了 androidx.compose.compiler:compiler:1.1.0-alpha03
。版本 1.1.0-alpha03 中包含这些提交内容。
新功能
- Compose 编译器现在支持较低版本的 Compose Runtime (1.0)。在此变更之前,Compose 编译器仅与相同版本或更高版本的 Compose Runtime 兼容。此变更生效后,Compose 编译器可与较低版本的 Compose Runtime (1.0) 兼容。(aosp/1796968)
- 更新了 Compose
1.1.0-alpha03
,使其依赖于 Kotlin1.5.30
。(I74545)
版本 1.1.0-alpha02
2021 年 8 月 18 日
发布了 androidx.compose.compiler:compiler:1.1.0-alpha02
。版本 1.1.0-alpha02 中包含这些提交内容。
版本 1.1.0-alpha01
2021 年 8 月 4 日
发布了 androidx.compose.compiler:compiler:1.1.0-alpha01
。版本 1.1.0-alpha01 中包含这些提交内容。
1.0 版
版本 1.0.5
2021 年 11 月 3 日
发布了 androidx.compose.compiler:compiler:1.0.5
。版本 1.0.5 中包含这些提交内容。
bug 修复
- 修复了跟踪 derivedStateOf 实例时出现的崩溃问题。(aosp/1792247)
版本 1.0.4
2021 年 10 月 13 日
发布了 androidx.compose.compiler:compiler:1.0.4
。版本 1.0.4 中包含这些提交内容。
依赖项更新
- 已更新为依赖于 Kotlin
1.5.31
版本 1.0.3
2021 年 9 月 29 日
发布了 androidx.compose.compiler:compiler:1.0.3
。版本 1.0.3 中包含这些提交内容。
依赖项更新
- 已更新为依赖于 Kotlin
1.5.30
版本 1.0.2
2021 年 9 月 1 日
发布了 androidx.compose.compiler:compiler:1.0.2
。版本 1.0.2 中包含这些提交内容。
已更新,可支持 Compose 1.0.2
版本。Compose 1.0.2
仍与 Kotlin 1.5.21
兼容。
版本 1.0.1
2021 年 8 月 4 日
发布了 androidx.compose.compiler:compiler:1.0.1
。版本 1.0.1 中包含这些提交内容。
依赖项更新
- 已更新为依赖于 Kotlin
1.5.21
。
版本 1.0.0
2021 年 7 月 28 日
发布了 androidx.compose.compiler:compiler:1.0.0
。版本 1.0.0 中包含这些提交内容。
1.0.0 的主要功能
这是 Compose 的第一个稳定版本。如需了解详情,请参阅官方 Compose 版本发布博客!
版本 1.0.0-rc02
2021 年 7 月 14 日
发布了 androidx.compose.compiler:compiler:1.0.0-rc02
。版本 1.0.0-rc02 中包含这些提交内容。
版本 1.0.0-rc01
2021 年 7 月 1 日
发布了 androidx.compose.compiler:compiler:1.0.0-rc01
。版本 1.0.0-rc01 中包含这些提交内容。
版本 1.0.0-beta09
2021 年 6 月 16 日
发布了 androidx.compose.compiler:compiler:1.0.0-beta09
。版本 1.0.0-beta09 中包含这些提交内容。
版本 1.0.0-beta08
2021 年 6 月 2 日
发布了 androidx.compose.compiler:compiler:1.0.0-beta08
。版本 1.0.0-beta08 中包含这些提交内容。
版本 1.0.0-beta07
2021 年 5 月 18 日
发布了 androidx.compose.compiler:compiler:1.0.0-beta07
。版本 1.0.0-beta07 中包含这些提交内容。
版本 1.0.0-beta06
2021 年 5 月 5 日
发布了 androidx.compose.compiler:compiler:1.0.0-beta06
。版本 1.0.0-beta06 中包含这些提交内容。
版本 1.0.0-beta05
2021 年 4 月 21 日
发布了 androidx.compose.compiler:compiler:1.0.0-beta05
。版本 1.0.0-beta05 中包含这些提交内容。
版本 1.0.0-beta04
2021 年 4 月 7 日
发布了 androidx.compose.compiler:compiler:1.0.0-beta04
。版本 1.0.0-beta04 中包含这些提交内容。
版本 1.0.0-beta03
2021 年 3 月 24 日
发布了 androidx.compose.compiler:compiler:1.0.0-beta03
。版本 1.0.0-beta03 中包含这些提交内容。
版本 1.0.0-beta02
2021 年 3 月 10 日
发布了 androidx.compose.compiler:compiler:1.0.0-beta02
。版本 1.0.0-beta02 中包含这些提交内容。
版本 1.0.0-beta01
2021 年 2 月 24 日
发布了 androidx.compose.compiler:compiler:1.0.0-beta01
。版本 1.0.0-beta01 中包含这些提交内容。
这是 Compose 1.0.0 Beta 版的第一个版本。
版本 1.0.0-alpha12
2021 年 2 月 10 日
发布了 androidx.compose.compiler:compiler:1.0.0-alpha12
。版本 1.0.0-alpha12 中包含这些提交内容。
版本 1.0.0-alpha11
2021 年 1 月 28 日
发布了 androidx.compose.compiler:compiler:1.0.0-alpha11
。版本 1.0.0-alpha11 中包含这些提交内容。
版本 1.0.0-alpha10
2021 年 1 月 13 日
发布了 androidx.compose.compiler:compiler:1.0.0-alpha10
。版本 1.0.0-alpha10 中包含这些提交内容。
版本 1.0.0-alpha09
2020 年 12 月 16 日
发布了 androidx.compose.compiler:compiler:1.0.0-alpha09
。版本 1.0.0-alpha09 中包含这些提交内容。
版本 1.0.0-alpha08
2020 年 12 月 2 日
发布了 androidx.compose.compiler:compiler:1.0.0-alpha08
。版本 1.0.0-alpha08 中包含这些提交内容。
版本 1.0.0-alpha07
2020 年 11 月 11 日
发布了 androidx.compose.compiler:compiler:1.0.0-alpha07
。版本 1.0.0-alpha07 中包含这些提交内容。
新功能
- 稳定性推断和传播。Compose 编译器插件会分析其编译的类型,以推断其是否符合进行特定运行时优化的条件。然后,这一推断结果将作为元数据合成到类上,以供编译器在其他模块中利用。此外,这些推断的运行时结果会在组合过程中随元数据一起传递给可组合调用。这就需要对可组合函数使用不同的元数据协议,这意味着,使用 alpha07 版编译器编译的可组合函数不会与使用任何早前版本编译器编译的可组合函数保持二进制兼容。(aosp/1431988)
版本 1.0.0-alpha06
2020 年 10 月 28 日
发布了 androidx.compose.compiler:compiler:1.0.0-alpha06
。版本 1.0.0-alpha06 中包含这些提交内容。
版本 1.0.0-alpha05
2020 年 10 月 14 日
发布了 androidx.compose.compiler:compiler:1.0.0-alpha05
。版本 1.0.0-alpha05 中包含这些提交内容。
版本 1.0.0-alpha04
2020 年 10 月 1 日
发布了 androidx.compose.compiler:compiler:1.0.0-alpha04
。版本 1.0.0-alpha04 中包含这些提交内容。
androidx.compose:compose-compiler
已重构为 androidx.compose.compiler:compiler
。
这是该新组中的第一个版本。