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

构建Release版App Bundle时遇ListTileNativeAdFactory.kt中R引用未解析错误

解决Release构建中"Unresolved reference: R"编译错误

构建Release版本App Bundle时,出现以下编译错误:

e: ...\ListTileNativeAdFactory.kt: (19, 22): Unresolved reference: R
e: ...\ListTileNativeAdFactory.kt: (23, 40): Unresolved reference: R
e: ...\ListTileNativeAdFactory.kt: (25, 40): Unresolved reference: R
e: ...\ListTileNativeAdFactory.kt: (27, 52): Unresolved reference: R
e: ...\ListTileNativeAdFactory.kt: (39, 55): Unresolved reference: R
e: ...\ListTileNativeAdFactory.kt: (43, 51): Unresolved reference: R

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:compileReleaseKotlin'.

错误表现为ListTileNativeAdFactory.kt文件中多处引用R类失败,最终终止构建。

以下是针对性的解决步骤:

  • 校验R类导入:确认ListTileNativeAdFactory.kt顶部导入的是项目自身的R类(import 你的应用包名.R),避免误导入android.R(系统R类会覆盖自定义资源类)。
  • 清理重建项目:执行Gradle命令清除旧构建缓存并重新编译Release版本:
    # Windows系统
    gradlew clean assembleRelease
    
    # Mac/Linux系统
    ./gradlew clean assembleRelease
    
  • 排查资源文件问题:Release构建对资源校验更严格,检查res目录下是否存在命名不规范、重复资源、XML语法错误(如未闭合标签),这类问题会导致R类无法正常生成。
  • 调整Build配置:
    1. 确保app/build.gradle中Release变体的buildConfigEnabled设为true;
    2. 若开启了minifyEnabled,需在ProGuard/R8规则中添加保护R类的配置:
      -keep class 你的应用包名.R { *; }
      -keep class 你的应用包名$R$* { *; }
      
  • 检查模块依赖:如果ListTileNativeAdFactory.kt属于子模块,确认子模块已正确依赖主应用模块,且导入的是子模块自身的R类(import 子模块包名.R)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 22:50:23