锁定错误:
在运行程序时出现这个问题。
错误出现在修改 module 的 gradle 之后。但是我对 gradle 的修改只是添加一些内容,又把那些内容给删掉而已,并没有对gradle进行永久改变。
如果回滚代码,则不会出现错误了
分析:
gradle没有改变仍然出错,所以这并不是 gradle 配置导致出现问题,而是 android Studio 的问题(打脸)
解决尝试:
1、在 Android SDK 配置中添加新版本 Android 8.1 的支持,没有用
2、在 Android SDK 配置中,点进 edit 来更新 sdk,仍然没用
3、尝试清除Studio缓存、clear Project、没用
4、在代码中发现了这样的错误提示
根据引导指定java sdk,无用
5、删除项目的 *.iml 文件,重新生成,无用
6、在app.iml文件中添加
<orderEntry
type=
"jdk"
jdkName=
"Android API 23 Platform"
jdkType=
"Android SDK"
/>
好像成功了,没有 please select Android Sdk 错误提示了。java 代码不在报错,但 kotlin 代码仍然是报错状态,却可以运行了。至少问题已经解决一半了。
7、修改 kotlin 的版本为最新版本,app.iml 中kotlin 的版本自动随之改变。仍然报错
8、降低 kotlin 的版本到 1.2.31,不在报错了!!!,问题解决。
学到的:
1、please select android sdk 错误可能是由于 app.iml 中的sdk依赖配置丢失导致(原因未知),这个sdk依赖不会在重建 app.iml 时生成,只能手动添加。
2、app.iml 用于 gradle 编译项目,当 module.gradle 中的依赖配置改变时,app.iml 也会随之改变。