我在应用程序apktool问题上遇到了非常烦人的问题。我不知道我做错了什么,也不知道问题出在哪里。我在debian和linux mint上尝试过。我使用了不同版本的apktool,
导致相同的错误:
I: Checking whether sources has changed...
I: Checking whether resources has changed...
I: Building resources...
Exception in thread "main" brut.androlib.AndrolibException: brut.common.BrutException: could not exec command: [aapt, p, -F, /tmp/APKTOOL3630495287059303807.tmp, -I, /home/awesomename/apktool/framework/1.apk, -S, /home/awesomename/out/./res, -M, /home/awesomename/out/./AndroidManifest.xml]
at brut.androlib.res.AndrolibResources.aaptPackage(Unknown Source)
at brut.androlib.Androlib.buildResourcesFull(Unknown Source)
at brut.androlib.Androlib.buildResources(Unknown Source)
at brut.androlib.Androlib.build(Unknown Source)
at brut.androlib.Androlib.build(Unknown Source)
at brut.apktool.Main.cmdBuild(Unknown Source)
at brut.apktool.Main.main(Unknown Source)
Caused by: brut.common.BrutException: could not exec command: [aapt, p, -F, /tmp/APKTOOL3630495287059303807.tmp, -I, /home/windows/apktool/framework/1.apk, -S, /home/windows/out/./res, -M, /home/windows/out/./AndroidManifest.xml]
at brut.util.OS.exec(Unknown Source)
... 7 more
Caused by: java.io.IOException: Cannot run program "aapt": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1041)
at java.lang.Runtime.exec(Runtime.java:617)
at java.lang.Runtime.exec(Runtime.java:485)
... 8 more
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:135)
at java.lang.ProcessImpl.start(ProcessImpl.java:130)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1022)
... 10 more它似乎不能使用aapt,但我读到了apktool。而且看起来aapt是内置在apktool中的,为什么它不能工作?
发布于 2014-05-18 15:48:57
在重新编译apk时,似乎在构建资源时出现了一些问题。您可以做的是,当您反编译您的apk时,使用以下命令
apktool d -f -r apkfilename.apk在这里,-f将替换先前反编译的apk代码,而-r将忽略资源的反编译。
这将防止资源被反编译,并在重新编译apk时简单地复制相同的资源。
发布于 2014-10-08 20:20:31
如果您一直在使用v1,现在升级到了v2,请尝试手动删除框架文件。
在windows8上,它通常是在C:\Users\YourName\apktool\framework\1.apk。
当您尝试构建某些内容时,应重新生成该文件。
发布于 2015-01-07 20:03:38
我的问题通过删除\Framework1.apk、对我修改的文件进行备份、清除目录并再次反编译*.apk等方法得到了解决。(在linux上,路径是home/user/apktool/...).更新后,apktool总是加载旧的资源表。N
https://stackoverflow.com/questions/23317208
复制相似问题