21

アプリケーション 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 内でビルドされているようですが、なぜ機能しないのですか?

4

11 に答える 11

55

apk の再コンパイル中にリソースを構築する際に問題があるようです。あなたができることは、apkを逆コンパイルするときにこのコマンドを使用することです

apktool d -f -r apkfilename.apk

ここで -f は以前に逆コンパイルされた apk のコードを置き換えることであり、-r はリソースの逆コンパイルを無視することです。

これにより、リソースが逆コンパイルされなくなり、apk を再コンパイルするときに同じリソースが単純にコピーされます。

于 2014-05-18T07:48:56.783 に答える
6

In case you've been using v1 and now upgraded to v2, try manually deleting the framework file.

On windows 8 it's normally at C:\Users\YourName\apktool\framework\1.apk.

The file should be regenerated once you try to build something.

于 2014-10-08T12:20:30.973 に答える
1

間違いなく、私がしばらく前に抱えていた aapt PATH の問題のようです。aapt を PATH に追加しましたか? それでも問題が解決しない場合は、これらすべての依存関係の問題を回避するために、bash で適切な apk キットを作成しました。apktool、signapk、zipalign、adb、fastboot、および heimdall をサポートしています。見てみな。必要なのは、最新の Java インストールだけです。

http://forum.xda-developers.com/android/development/toolkit-apk-munky-rench-t3026757/post58747626#post58747626

于 2015-02-15T03:04:49.473 に答える
0

ia32-libsをインストールして、最新バージョンのapktoolを更新してみてください。(できれば再起動)

apktool には、Ubuntu 12.04 以降では使用できない「ia32-libs」が必要です。ia32-libs をインストールする

sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 lib32stdc++6

apktools.jarの最新バージョンをダウンロード- https://bitbucket.org/iBotPeaches/apktool/downloads

apktool の完全なインストール ガイド - http://ibotpeaches.github.io/Apktool/install/

于 2016-05-25T20:47:14.760 に答える
0

主な問題は、2.4.0 が必要な apktool のバージョンです。

ibotpeaches git ハブから手動でインストールする必要があります

ここでいくつかの良い情報

https://www.youtube.com/watch?v=kB6s10Uwpcs

kali https://github.com/catenatedgoose?tab=repositoriesの自動スクリプト

于 2019-04-21T05:18:25.877 に答える
-1

解決策は、apktool ディレクトリをシステム PATH に含めることです。

于 2014-10-28T11:45:39.270 に答える