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

Azure DevOps中Gradle无法生成Android App Bundle(.aab)问题

解决Azure DevOps中Gradle构建未生成Android App Bundle的问题

以下是针对问题的排查和解决步骤:

1. 确认自定义变量$(packageName)的正确性

  • 检查Azure DevOps管道的变量配置,确保packageName的值被正确设置为customApp(你的重命名模块名)。如果变量未定义或值错误,Gradle任务会执行无效的模块任务,导致无AAB输出。
  • 可临时将任务中的tasks参数替换为硬编码的:customApp:bundleRelease测试,排除变量问题。

2. 检查Gradle任务执行日志

  • 查看Azure DevOps中该Gradle任务的详细日志,确认:
    • 是否真的执行了:customApp:bundleRelease任务,而非被标记为UP-TO-DATE跳过
    • 任务执行过程中是否有隐藏的编译错误(部分场景下守护进程会显示"完成"但实际任务失败)

3. 修正AAB文件名的查找逻辑

  • 模块重命名为customApp后,默认生成的AAB文件名是**customApp-release.aab**,而非app-release.aab。你可能找错了文件名,去对应目录下搜索*.aab确认实际生成的文件。

4. 检查模块build.gradle配置

  • 确认模块的build.gradle中没有禁用App Bundle生成的配置:
    • 确保未设置android.bundle.enableSplitApk=false或其他禁用bundle的参数
    • 如果使用了产品风味(Product Flavors),需要调整Gradle任务为:customApp:[FlavorName]BundleRelease(例如:customApp:prodBundleRelease),否则任务无法匹配对应变体

5. 验证工作目录与文件路径

  • 确认Gradle@2任务的工作目录是MyAndroidFolder(azure-pipeline.yml所在目录),若任务设置了workingDirectory参数,需确保路径正确,否则Gradle无法找到模块。
  • 在Gradle任务后添加辅助查找任务,定位所有AAB文件:
    # Bash任务
    find $(system.defaultworkingdirectory) -name "*.aab" -type f
    
    或
    # PowerShell任务
    Get-ChildItem -Path $(system.defaultworkingdirectory) -Filter *.aab -Recurse
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 13:33:16