You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kotlin 1.9.0版本导入kotlinx.android报错:Unresolved reference: Android

解决Kotlin中导入kotlinx.android.synthetic时的"Unresolved reference: Android"错误

这个错误的核心原因是Kotlin Android Extensions(即kotlinx.android.synthetic相关功能)已被官方废弃,从Kotlin 1.8版本开始就不再提供支持,你当前使用的1.9.0版本自然会出现该引用错误。

推荐解决方案:切换到View Binding(官方替代方案)

View Binding是官方推荐的视图绑定方式,安全且维护性更强,步骤如下:

  1. 在模块级的build.gradle.kts(或Groovy版的build.gradle)中启用View Binding:
    android {
        // 其他配置...
        buildFeatures {
            viewBinding = true
        }
    }
    
  2. 点击IDE工具栏的「Sync Project with Gradle Files」同步项目
  3. 在MainActivity.kt中替换原有的合成导入逻辑:
    class MainActivity : AppCompatActivity() {
        private lateinit var binding: ActivityMainBinding
    
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            // 初始化Binding对象
            binding = ActivityMainBinding.inflate(layoutInflater)
            setContentView(binding.root)
    
            // 示例:原使用`tv_main.text = "测试"`,现在改为`binding.tvMain.text = "测试"`
        }
    }
    

不推荐的临时方案:继续使用废弃的Kotlin Android Extensions

如果因特殊需求必须保留原写法,可尝试以下操作(注意:该功能已停止维护,存在兼容风险):

  1. 在模块级build.gradle.kts中添加废弃插件:
    plugins {
        id("com.android.application")
        id("org.jetbrains.kotlin.android")
        id("kotlin-android-extensions") // 添加此插件
    }
    
  2. 确保依赖中包含运行时库:
    dependencies {
        implementation("org.jetbrains.kotlin:kotlin-stdlib:1.9.0")
        implementation("kotlinx.android:kotlinx-android-extensions-runtime:1.0.0")
    }
    
  3. 同步项目后重新构建工程

内容的提问来源于stack exchange,提问作者Saurabh Damle

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 08:02:42