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

Apktool执行apktool b hw编译APK失败,未生成dist文件夹与APK文件

问题根因分析

你执行apktool b hw后没有生成dist目录和APK的核心原因是资源编译阶段触发致命错误,你看到的W前缀输出不是普通警告:这些是aapt资源打包工具返回的错误信息,只是被Apktool统一标记为警告输出。
报错指向res/values/styles.xml中引用的多个@android:style开头的系统主题在你当前Apktool加载的系统框架包中不存在,最终触发brut.androlib.AndrolibException异常,编译流程直接终止。

解决方案
  • 方案1:安装对应版本的系统framework框架包
    你反编译的APK目标SDK版本为28(Android 9),当前本地Apktool使用的默认1.apk框架包缺少对应主题资源。你可以先提取Android 9系统的framework.apk文件,执行以下命令安装到Apktool框架库:
    apktool if framework.apk
    安装完成后重新执行编译命令即可。
  • 方案2:手动修正styles.xml的错误引用
    如果无法获取对应framework包,可以直接打开报错的hw/res/values/styles.xml文件,逐一修改所有报错的parent主题引用:
    • 把废弃的Holo系列主题替换为当前framework包中存在的对应Material/DeviceDefault主题
    • ROM定制的私有系统主题可以替换为通用的同类型系统主题,也可以直接删除不存在的主题继承配置
  • 方案3:使用--no-res参数跳过资源编译
    如果你不需要修改资源、仅需要修改smali代码,可以编译时添加参数跳过资源校验:
    apktool b hw --no-res
    该参数可以直接绕过资源编译阶段,正常生成APK文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 09:15:03