文档

​
​

Development

User Acquisition

Monetization

工业

LevelPlay SDK - Android

Unity SDK

Android SDK

iOS SDK

Adobe AIR SDK

Flutter SDK

React Native SDK

LevelPlay SDK - Android

Unity LevelPlay
​
​
Android SDK
  • 开始使用
  • 法规和设置
  • 广告格式
  • 聚合网络
  • 测试集成
    • LevelPlay 集成测试套件
    • Android 集成助手
    • 测试集成
    • 集成核对表
    • 排除不显示广告服务的故障
    • TCF 同意日志故障排除
    • 排除 Kotlin 2 导致的 Android 构建失败
    • 测试 Ad Quality SDK 集成
  1. 实现游戏增长
  2. Unity LevelPlay
  3. LevelPlay SDK
  4. 适用于 Android 开发者的 LevelPlay SDK

排除 Kotlin 2 导致的 Android 构建失败

在构建 Kotlin 版本低于 2.0.0 的原生 Android app 时,识别和修复由 LevelPlay 9.6.0 中引入的 Kotlin 2 依赖项引起的 Android 构建失败。
阅读时间4 分钟
最后更新于 2 天前

如果使用低于 2.0.0 的 Kotlin 版本,可能会遇到 Android 构建失败。本指南介绍如何识别和解决这些问题。

症状

将 LevelPlay SDK 依赖项项升级到 9.6.0 后,Android 构建 Kotlin 编译期间会失败。Android Studio 中的构建输出面板将失败的任务显示为
:app:compile<Variant>Kotlin
(例如
:app:compileDebugKotlin
),Gradle 日志包含类似于以下内容的节选:
> 任务:app:compileDebugKotlin FAILED e:在依赖关系中找到不兼容的类。将它们从 类路径或使用“-Xskip-metadata-version-check”抑制错误 e: file:///.../transformed/jetified-kotlin-stdlib-2.1.21.jar!/META-INF/kotlin-stdlib.kotlin_module 模块是使用不兼容的 Kotlin 版本编译的。二进制文件 其元数据的版本为 2.1.0,预期版本为 1.8.0。 e:文件:///.../src/main/java/.../<YourFile>.kt:NN:NN 类“kotlin.Unit”为 使用不兼容的 Kotlin 版本进行编译。实际元数据 版本为 2.1.0,但编译器版本 1.8.0 可以读取版本 到 1.9.0。
要在应用修复之前进行确认,可以检查已解析的 Kotlin stdlib 版本:
./gradlew :app:dependencies | grep kotlin-stdlib
如果在项目的 Kotlin Gradle 插件处于 1.x 时在图表中看到
kotlin-stdlib:2.x.x
,本指南适用于您。

原因

Android 构建失败可能出于以下原因:
  • LevelPlay SDK 9.6.0(及其某些网络适配器)对 Kotlin 2.x 标准库(目前为
    kotlin-stdlib-2.1.21
    )有依赖项。
  • 为项目定义的 Kotlin 版本低于 2.0 将与使用 Kotlin 2.x 的 LevelPlay SDK 9.6.0 不兼容。

解决方案

要解决此问题,请将项目使用的 Kotlin Gradle Plugin (KGP) 版本升级到 2.0.0 或更高版本。建议目标为 2.1.21,即 LevelPlay 9.6.0 版本本身,因此项目的 stdlib 与 SDK 的 stdlib 匹配。

升级要求

升级到 Kotlin 2.0 或更高版本可能需要更新或配置相关的工具链版本,如下所示:
  • 运行 Kotlin 2.0 或更高版本编译器需要 JDK 17。要在 Android Studio 中设置 JDK 17,请在项目中转到 设置 > 构建、执行、部署 > 构建工具 > Gradle > Gradle JDK。
  • KSP(如果使用)与 Kotlin 版本绑定。将
    com.google.devtools.ksp
    升级到与您的 Kotlin 版本匹配的版本。
  • Jetpack Compose(如果使用)需要从 Kotlin 2.0 开始的 Compose 编译器 Gradle 插件。旧版
    composeOptions.kotlinCompilerExtensionVersion
    设置不再适用。
  • 升级 Kotlin 也可能会在 K2 编译器下您自己的代码中显示弃用警告或
    source-incompatible
    更改。请参阅 Kotlin 2.0.0 新增发布说明以了解更多信息。

验证分辨率

  1. 在 Android Studio 中,运行文件 > Sync Project with Gradle Files,构建 > 重新构建项目。
  2. 通过检查确认构建已修复: a.Gradle 输出以
    BUILD SUCCESSFUL
    消息结束,
    :app:compile<Variant>Kotlin
    完成时没有错误。 b.在依赖关系消息中找到的不兼容类不再出现在构建日志中。
如果报错仍然存在,请尝试以下操作:
  • 使用更新的 Kotlin 版本确认
    build.gradle
    中的 Kotlin 依赖关系。
  • 先运行
    ./gradlew --stop
    ,然后运行
    rm -rf ~/.gradle/caches/transforms-3/
    ,然后重新构建,从而清除 Gradle 缓存。或者,在 Android Studio 中,使用文件 > Invalidate Caches…,然后重新构建。

Copyright © 2026 Unity Technologies
法律信息隐私政策CookiesDocumentation Terms of Use请勿出售或分享我的个人信息您的隐私选择(Cookie 设置)

“Unity”、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属公司在美国和其他地方的商标或注册商标(此处查看更多信息)。其他名称或品牌是其各自所有者的商标。

为方便起见,一些页面是机器翻译的,可能包含不准确的内容。如有信息不一致的情况,以英文版本为准。

  • 在本页上
    • 症状

    • 原因

    • 解决方案

      • 升级要求

    • 验证分辨率


报告此页面的问题