Kotlin问题汇总

Kotlin问题汇总

真机安装调试

查看真机的Android版本,将build.gradle文件中的minSdk改为手机的Android版本,点Sync Now更新设置

apk安装失败

在gradle.properties全局配置中设置android.injected.testOnly=false

Unresolved reference:

在activity_main.xml中出现已注册id,但是mainActivity无法找到button的情况,要在build.gradle文件中导入kotin-android-extensions的包

在MainActivity加入包,import kotlinx.android.synthetic.main.activity_main.*

如果kotlinx 报红了,要在app的build.gradle文件中添加:kotlin-android-extensions

继承Fragment失败

有两个不同的Fragment可以选择,一个是系统内置的android.app.Fragment,一个是AndroidX库中的android.fragment.app.Fragment,这里要用AndroidX库中的Fragment。但是我在继承Fragment时失败了,解决办法是:在build.gradle文件中添加依赖implementation 'androidx.fragment:fragment-ktx:1.6.1',然后再继承Fragment就出现了AndroidX库的选项,自动导包成功。

报错解决办法
复制代码
e: This version (1.3.2) of the Compose Compiler requires Kotlin version 1.7.20 but you appear to be using Kotlin version 1.9.10 which is not known to be compatible.  Please fix your configuration (or `suppressKotlinVersionCompatibilityCheck` but don't say I didn't warn you!).
e: 此版本(1.3.2)的Compose编译器需要Kotlin 1.7.20版本,但您使用的Kotlin 1.9.10版本并不兼容。请修复您的配置(或"suppressKotlinVersionCompatibilityCheck",但不要说我没有警告您!)。

工程下的build.gradle

复制代码
plugins {
    id 'com.android.application' version '8.0.2' apply false
    id 'com.android.library' version '8.0.2' apply false
    id 'org.jetbrains.kotlin.android' version '1.7.20' apply false
}
// 将原本的1.9.10改为1.7.20即可

或者更改build.gradle(app)中的以下版本

Android 复制代码
composeOptions {
        kotlinCompilerExtensionVersion '1.3.2'
        }

版本兼容关系参考链接:https://developer.android.com/jetpack/androidx/releases/compose-kotlin?hl=zh-cn

新建activity_main.xml文件失败

按照New->XML->Layout xml File新建activity_main.xml无法建立,会显示layout name must be unique,直接New->File然后将文件命名为activity_main.xml即可,报红是因为文件还是空的,写入内容就OK了。

未完待续

相关推荐
冬奇Lab4 分钟前
相机录像流程:MediaRecorder与Camera2的协作之道
android·音视频开发·源码阅读
麦客奥德彪1 小时前
Jetpack Compose 常用开发总结
android
宁瑶琴1 小时前
COBOL语言的云计算
开发语言·后端·golang
麦客奥德彪1 小时前
Jetpack Compose Modifier 完全指南
android
小陈工2 小时前
2026年4月2日技术资讯洞察:数据库融合革命、端侧AI突破与脑机接口产业化
开发语言·前端·数据库·人工智能·python·安全
Zarek枫煜2 小时前
C3 编程语言 - 现代 C 的进化之选
c语言·开发语言·青少年编程·rust·游戏引擎
阿kun要赚马内2 小时前
Python中元组和列表差异:底层结构分析
开发语言·python
前进的李工3 小时前
MySQL大小写规则与存储引擎详解
开发语言·数据库·sql·mysql·存储引擎
Mac的实验室3 小时前
(2026年最新)解决谷歌账号注册设备扫码短信发送失败无法验证难题(100%通过无需扫码验证)
android·google·程序员