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

Android应用如何添加编译器参数消除@OptIn注解警告

消除@OptIn注解配套编译器参数警告的操作方法

使用@OptIn(ExperimentalFoundationApi::class)时弹出该警告,是因为@OptIn注解本身属于需要显式授权的实验性特性,需要给Kotlin编译器配置对应参数才能消除提示,具体操作如下:

  • 打开使用Compose代码的对应模块(绝大多数场景是app模块)的构建脚本,不要选错成项目根目录的构建文件:
    注意:配置必须写在模块级构建文件中,写在根目录构建文件不会生效
    • 老项目一般使用Groovy语法,对应文件名为build.gradle
    • 新版本Android Studio新建项目默认使用Kotlin DSL,对应文件名为build.gradle.kts
  • 在文件的android配置块中找到kotlinOptions子块,追加编译器参数配置:
    若为Groovy语法的build.gradle,配置示例:
android {
    // 原有compileSdk、defaultConfig等配置无需改动
    kotlinOptions {
        // 原有jvmTarget等配置无需改动
        freeCompilerArgs += [
            "-opt-in=kotlin.RequiresOptIn",
            // 可选:加上这行后全局默认允许Foundation实验API,无需逐处写@OptIn注解
            "-opt-in=androidx.compose.foundation.ExperimentalFoundationApi"
        ]
    }
}

若为Kotlin DSL语法的build.gradle.kts,配置示例:

android {
    // 原有compileSdk、defaultConfig等配置无需改动
    kotlinOptions {
        // 原有jvmTarget等配置无需改动
        freeCompilerArgs += listOf(
            "-opt-in=kotlin.RequiresOptIn",
            // 可选:加上这行后全局默认允许Foundation实验API,无需逐处写@OptIn注解
            "-opt-in=androidx.compose.foundation.ExperimentalFoundationApi"
        )
    }
}
  • 配置完成后点击Android Studio顶部弹出的Sync Now按钮,等待Gradle同步完成,警告就会消失。

补充:如果不想全局放开Foundation实验API的使用权限,只需要添加"-opt-in=kotlin.RequiresOptIn"这一条参数即可,代码里保留原有的@OptIn(ExperimentalFoundationApi::class)注解,警告同样会消除。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 05:55:14