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了。

未完待续

相关推荐
格林威29 分钟前
工业相机Chunk功能全解析:图像嵌入时间戳、编码器元数据(附堡盟C#代码)
开发语言·人工智能·数码相机·计算机视觉·c#·视觉检测·工业相机
通玄32 分钟前
Jetpack Compose 入门系列(十):Paging 3 分页加载
android
hunterandroid38 分钟前
DataStore 工程化实践:迁移、并发更新与异常恢复
android·前端
小大宇1 小时前
Python 集成 Conda
开发语言·python·conda
还是奇怪1 小时前
Simon Willison 用 DSPy 优化 Datasette Agent 提示词:提示工程正在变成可测试的软件工程
java·开发语言·软件工程
小大宇2 小时前
python flask框架 SSE流式返回、跨域、报错
开发语言·python·flask
Legendary_0082 小时前
LDR6500 设计指南:Type-C 音频快充二合一配件 PD 取电与插拔时序控制方案
c语言·开发语言·音视频
柒星栈3 小时前
PHP 源码怎么加密防破解?三套方案实战指南
开发语言·php·android studio
勉灬之3 小时前
Next.js + Prisma 跨平台部署踩坑记
开发语言·javascript·ecmascript
程序员-珍3 小时前
报错下载android sdk失败
android·java