尝试使用 apktool 和 aapt2 重建时文件路径无效

Posted

技术标签:

【中文标题】尝试使用 apktool 和 aapt2 重建时文件路径无效【英文标题】:invalid file path while trying to rebuild with apktool and aapt2 【发布时间】:2020-07-26 19:37:27 【问题描述】:

我在尝试使用 apkool 重新打包 apk 时遇到错误。下面是错误跟踪。


W: error: invalid file path 'C:\Users\ccre\res\drawable2\abc_ic_search_api_material.xml'.
W: error: invalid file path 'C:\Users\ccre\res\drawable2\abc_ic_voice_search_api_material.xml'.
W: error: invalid file path 'C:\Users\ccre\res\drawable2\abc_item_background_holo_light.xml'.
W: error: invalid file path 'C:\Users\ccre\res\drawable2\abc_list_divider_material.xml'.
W: error: invalid file path 'C:\Users\ccre\res\drawable2\abc_list_selector_background_transition_holo_dark.xml'.
brut.androlib.AndrolibException: brut.common.BrutException: could not exec (exit code = 1): [C:\Users\HOMA~1\AppData\Local\Temp\brut_util_Jar_3949150857603741809118973406025728052.tmp, compile, --dir, C:\Users\ccre\res, --legacy, -o, C:\Users\ccre\build\resources.zip]

有没有人告诉我这里出了什么问题以及为什么在文件存在时显示此错误[error: invalid file path]?!

【问题讨论】:

请提供apktool版本 @HoBBiT,apktool 版本 2.4.1 【参考方案1】:

似乎 APK 资源被 AndroResGuard 混淆了。 ApkTool 可以(大部分)反编译它,但编译是使用标准 aapt2 执行的,它不理解 'drawable2' 资源类型,因此它抱怨文件路径无效。

您可以在此处找到有关此问题的更多信息:https://github.com/iBotPeaches/Apktool/issues/1719

【讨论】:

以上是关于尝试使用 apktool 和 aapt2 重建时文件路径无效的主要内容,如果未能解决你的问题,请参考以下文章

Unity - 更改分辨率时文本会更改大小

aapt2 工具介绍

序言中不能有内容。在安卓工作室

使用 PEAR 的 Mail_Mime 时,附加 HTML 图像时文本部分不起作用

值-lddtr-v21.xml错误+ AAPT2尝试在Android中构建时出错

apktool 没有生成 apk 文件