文章目录

  • 问题描述
  • 解决问题
    • 1. 找到 compose 与 kotlin 的[兼容性版本对照表](https://developer.android.google.cn/jetpack/androidx/releases/compose-kotlin)
    • 2. 添加 compose compiler 依赖
    • 3. 修改 kotlin 版本配置
    • 4. 修改 compose 其它依赖项为最新的稳定版本

问题描述

Android Studio 版本:2021.2.1 Patch 2

新建一个 compose 项目后,一运行,就报了类似如下错误:
“This version (1.1.1) of the Compose Compiler requires Kotlin version 1.6.10 but you appear to be using Kotlin version 1.5.31 …”

解决问题

1. 找到 compose 与 kotlin 的兼容性版本对照表

如下

我的目标是,想应用最新的版本

2. 添加 compose compiler 依赖

在module / build.gradle 中,增加

implementation "androidx.compose.compiler:compiler:1.3.0"

最新的 AS 是有版本自动提示的。 输入1.3 发现就有了 1.3.0, 而文档中 稳定版本的 1.3.0还没更新上去。

接着一运行,发现错误依旧 …

3. 修改 kotlin 版本配置

发现在 project 下的 build.gradle 中有:

plugins {id 'com.android.application' version '7.2.2' apply falseid 'com.android.library' version '7.2.2' apply falseid 'org.jetbrains.kotlin.android' version '1.5.31' apply false
}

找到 kotlin 1.5.31 的配置,修改成 1.7.10。

4. 修改 compose 其它依赖项为最新的稳定版本

在 Compose 库-稳定版 页面可以查看到最新的发布日志。如:


发现其它 compose 库最新版本是 1.2.1,且在 AS 中使用自动提示时,也无法使用1.3.0,那就都改成1.2.1了。

[app module] / build.gradle:

android {compileSdk 33defaultConfig {...targetSdk 33}...composeOptions {kotlinCompilerExtensionVersion '1.3.0'}
}
dependencies {
//    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.10"implementation 'androidx.core:core-ktx:1.7.0'implementation "androidx.compose.compiler:compiler:1.3.0"implementation "androidx.compose.ui:ui:1.2.1"implementation "androidx.compose.animation:animation:1.2.1"implementation "androidx.compose.animation:animation-graphics:1.2.1"implementation "androidx.compose.foundation:foundation:1.2.1"implementation "androidx.compose.foundation:foundation-layout:1.2.1"implementation "androidx.compose.runtime:runtime:1.2.1"implementation 'androidx.compose.material3:material3:1.0.0-alpha16'implementation "androidx.compose.ui:ui-tooling-preview:1.2.1"implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.5.1'implementation 'androidx.activity:activity-compose:1.5.1'testImplementation 'junit:junit:4.13.2'androidTestImplementation 'androidx.test.ext:junit:1.1.3'androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'androidTestImplementation "androidx.compose.ui:ui-test-junit4:1.2.1"debugImplementation "androidx.compose.ui:ui-tooling:1.2.1"debugImplementation "androidx.compose.ui:ui-test-manifest:1.2.1"
}

最终 gradle sync 后,编译运行成功了 ^~^

Android Compose 版本与 Kotlin 版本的兼容问题相关推荐

  1. 【错误记录】Android Studio 4.2.1 编译报错 ( Kotlin 版本推荐设置 1.5.0 )

    文章目录 一.报错信息 二.解决方案 一.报错信息 将 Android Studio 版本升级成最新的 4.2.14.2.14.2.1 版本 , 出现如下错误 ; Build file 'D:\pro ...

  2. 【Android FFMPEG 开发】Android Studio 中 配置 FFMPEG 库最小兼容版本 ( undefined reference to 'atof' )

    文章目录 FFMPEG 最小兼容版本 注意事项 FFMPEG 最小兼容版本 注意事项 1 . 最小兼容版本 : 在 Ubuntu 中编译 FFMPEG 时 , 需要指定头文件 与 NDK 的依赖库 , ...

  3. android studio 发布版本,Android Studio 4.1 Canary 版本发布

    Android Studio 4.1 Canary 版本发布 主要开始支持 Jetpack Compose 支持 Jetpack Compose Jetpack Compose工具包提供了一种构建应用 ...

  4. 用较新版本的Android Studio Chipmunk编译旧版本的Android 21的Sample

    技术发展这么快,经常遇到需要使用新版本的Android Studio来开发运行旧的Android工程,此时需要处理gradle兼容的问题 问题一.Could not install Gradle di ...

  5. 【Android 应用开发】 Android 各种版本简介 ( Support 支持库版本 | Android Studio 版本 | Gradle 版本 | jcenter 库版本 )

    初学者遇到 Android Studio, 导入工程后, 会出现各种奇葩错误, 如果管理好各个插件, gradle, SDK, SDK Tools, 各种官方依赖库 的版本, 会将错误大大的减少; 这 ...

  6. 浏览器登录_谷歌浏览器在Android 7.0及以上版本支持使用指纹进行无密码登录

    此前谷歌已经宣布与 FIDO 联盟达成合作关系并在安卓系统上调用指纹或面部识别等来登录某些支持的网站. 在谷歌浏览器最新发布的帮助文档里谷歌介绍称在部分谷歌服务上允许用户使用安卓设备直接解锁无需密码. ...

  7. 入门级带你实现一个安卓智能家居APP(2)kotlin版本

    前言 上一篇写过java版本的实现,这一篇就写一下kotlin版本的吧. 效果展示 本APP是通过tcp/ip协议与连了WiFi的单片机通信. 其实除了主活动类和新建项目时有一丢丢不同,其他的都是一样 ...

  8. Android开发学习——3.平台版本、SDK版本、API级别

    文章目录 一.引言 二.概念学习 1. 平台版本 2. API级别 3. SDK版本 三.参考 一.引言 前两篇文介绍了Android开发的IDE--AS和AS安装时需要准备的工具包.某种程度上来说, ...

  9. android7.0 谷歌拼音,谷歌浏览器在Android 7.0及以上版本支持使用指纹验证进行无密码登录...

    原标题:谷歌浏览器在Android 7.0及以上版本支持使用指纹验证进行无密码登录 来源:蓝点网 此前谷歌已经宣布与 FIDO 联盟达成合作关系并在安卓系统上调用指纹或面部识别等来登录某些支持的网站. ...

最新文章

  1. 用计算机计算线性卷积的基本规则,实验三_线性卷积与圆周卷积的计算.doc
  2. UPS故障案例集(一)
  3. 【蓝桥杯-第五届】 啤酒和饮料
  4. 倩女手游服务器维护,倩女手游7月28日服务器在线维护公告
  5. 半监督学习之数据加载
  6. 试题 历届试题 买不到的数目(dp/数学)
  7. CodeForces - 1453D Checkpoints(概率+构造)
  8. jsf集成spring_JSF 2,PrimeFaces 3,Spring 3和Hibernate 4集成项目
  9. Python3 多进程共享变量实现方法(亲测)
  10. [转]Struts2.3.16.1+Hibernate4.3.4+Spring4.0.2 框架整合
  11. Oracle instantclient 11.2 (64位)安装与配置tnsnames.ora,并使用PL/SQL Develpoer14(64位)连接数据库
  12. Nokia n900使用
  13. 单点登陆_规避单点故障,MySQL 8.0 MGR软负载怎么选?
  14. python怎么用input输入列表_Python - 根据列表内容验证用户输入的最佳方法是什么?...
  15. android文献翻译,Android外文文献翻译
  16. Python-OpenCV——Image Blurring(Image Smoothing)
  17. vue打包导致浏览器崩溃的解决方法
  18. 怎么找贷款意向客户?
  19. 安装cnpm淘宝镜像过程报错
  20. 技术 | 脑电的现在与未来

热门文章

  1. 黑马程序员——代码实现进制转换
  2. S3C2450自动升级
  3. sql语句,如何找出重复的数据
  4. 使用graphicsmagick时gm命令被占用
  5. (转载)Bro NIDS的安装与配置
  6. 裂变位法加密 best coder
  7. EPON和GPON的区别
  8. 软件工程导论第六版 第五章 总体设计知识点总结
  9. 链路聚合(二层链路聚合划分)
  10. c 语言中逻辑运算符使用方法,C语言的逻辑运算符的使用