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

集成Google Asset Delivery(Install-Time)导入asset-pack插件报错怎么办

核心错误原因

两个报错均由Asset Pack模块配置逻辑错误导致:

  • com.android.asset-pack 是独立Asset Pack模块的专属插件,不能与com.android.library、com.android.application、kotlin-android等普通模块插件共存在同一个模块的plugins配置中,直接在现有库模块加该插件,会触发插件重复注册kotlinOptions扩展的冲突,也就是你看到的第一个报错。
  • 清空其他插件只保留asset-pack配置时出现errorCode=-2,是因为你操作的模块本质还是普通Android Library模块,没有被Gradle识别为合法的Asset Pack类型模块,插件无法完成初始化。
正确配置流程
  • 第一步:创建独立的Asset Pack模块
    不要在现有库模块/主应用模块上修改配置,通过IDE新建模块入口选择Asset Pack类型创建独立模块,IDE会自动生成模块的基础合法配置,生成的build.gradle默认仅引入com.android.asset-pack插件,不要手动往这个模块的plugins块中添加任何其他普通模块插件。你之前写的assetPack配置块可以直接迁移到这个新建模块的build.gradle中,修改packName为你实际的模块名即可。
  • 第二步:对齐版本匹配关系
    你当前使用的Gradle 7.1.3版本,必须搭配7.1.x系列的Android Gradle Plugin(AGP)使用,com.android.asset-pack插件版本和AGP版本严格绑定,不需要单独指定版本,和项目级AGP版本保持一致即可,版本不匹配会出现各类同步、编译错误。
  • 第三步:补全主应用模块配置
    Asset Pack最终要关联到主application模块上,不能关联到库模块:
    1. 在主app模块的dependencies中添加Asset Delivery核心依赖
      dependencies {
          implementation 'com.google.android.play:asset-delivery:2.2.2'
          // kotlin开发场景可补充对应ktx扩展
          implementation 'com.google.android.play:asset-delivery-ktx:2.2.2'
      }
      
    2. 在主app模块的android配置块中声明关联的Asset Pack模块
      android {
          // 保留你原有的其他配置
          assetPacks = [":你新建的Asset Pack模块名称"]
      }
      
    3. 检查项目根目录下的settings.gradle文件,确认新建的Asset Pack模块已经被正确include。
  • 第四步:本地调试注意事项
    install-time类型的Asset Pack不会在你直接运行debug apk时被打包进去,本地验证需要通过bundletool构建出包含所有asset pack的apks文件再安装到设备,否则调用API时会因为找不到资源包返回错误。

内容的提问来源于stack exchange,提问作者Eco L. Ken

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 04:57:22