アプリケーション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内でビルドされているようですが、なぜ機能しないのですか?
Apkの再コンパイル中にリソースを構築する際に問題があるようです。あなたができることは、apkを逆コンパイルするときにこのコマンドを使用することです
apktool d -f -r apkfilename.apk
ここで、-fは以前の逆コンパイルされたapkのコードを置き換え、-rはリソースの逆コンパイルを無視します。
これにより、リソースの逆コンパイルが防止され、apkを再コンパイルするときに同じリソースが単純にコピーされます。
V1を使用していて、v2にアップグレードした場合は、フレームワークファイルを手動で削除してみてください。
Windows 8では、通常C:\Users\YourName\apktool\framework\1.apk
。
何かをビルドしようとすると、ファイルを再生成する必要があります。
私の問題は、\ framework\1.apkを削除し、変更したファイルのバックアップを作成し、dirを消去し、*。apkを再コンパイルするなどして解決しました(Linuxでは、パスはhome/[user]/apktool / ...)。更新後、apktoolは常に古いリソーステーブルをロードしました。 N
間違いなく私がしばらく前に持っていた適切なPATH問題のように思えます。 PATHにaaptを追加しましたか?それでも問題がある場合は、これらの依存関係の問題をすべて回避するために、bashで適切なapkキットを作成しました。 apktool、signapk、zipalign、adb、fastboot、heimdallをサポートしています。見てみな。必要なのは、現在のJavaインストール。
apktool d foo.apk
(逆コンパイルされた成功)を実行してからapktool b foo
(再コンパイルが同様のエラーで失敗した)を実行すると、同じ問題が発生します。
上記のapktool
ツールは、Kali LinuxのSudo apt-get install apktool
を介してインストールされました。
そのため、解決策はapktool
の公式サイト、たとえば https://connortumbleson.com/2017/01/23/apktool-v2-2-2-released/ (この記事の執筆時点では最新バージョンです)、ダウンロードして、md5sumで、たとえばmd5sum apktool_2.2.2.jar
を確認してから、そのapktool_2.2.2.jarをapktool.jarに名前変更します。
次に、Java -jar ./apktool.jar b foo
を実行して再コンパイルします。エラーなしで成功します(生成されたapkは./foo/dist/foo.apkにあります)。
pATHにaaptファイルを含むディレクトリを配置してください。たとえば、export PATH = $ PATH:./ ./apktool b
ia32-libsをインストールし、apktoolの最新バージョンを更新してみてください。 (可能であれば再起動)
apktoolには「ia32-libs」が必要ですが、これはUbuntu 12.04以降では使用できません。インストール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/
明確な答えを出すのに十分な情報がありません。
異なるバージョンを使用して言及したが、バージョン2.4でaaptの問題は解決されました。依存関係はJavaバージョン1.8以降およびフレームワークに削減されました。
私はDebianを使用していますが、次のものがあります。
これで、aaptパスエラーを取り除くことができました。
私が遭遇した最後のエラーはaaptとは無関係でしたが、フレームワークにあったので、このコマンドを実行しました
apktool empty-framework-dir
そしてそれはそれを解決しました。
エラーにはいくつかの理由があります。以下を試して問題を解決してください。
1.ここから新しい(変更された)jarファイルをダウンロードします http://onephin.com/fix-apktool-dont-compile-dont-build-error/ 1.1解凍します。 1.2名前をApktool.jarに変更します1.3このファイルをApktoolフォルダーに配置します。
2. Apktoolフォルダーが/ usr/local/binにあることを確認します(ルートが必要です)
3. Apktool.jarファイルが実行可能であることを確認します(chmod + x)
4。Javaを正しくインストールするか、またはJavaを適切にインストールすると、変数パスが間違っている可能性があります。この問題を修正するには、再インストールJavaその後、変数パスを適切に設定します。
この問題を修正する詳細については、 http://onephin.com/fix-apktool-dont-compile-dont-build-error/ にアクセスしてください。
主な問題は2.4.0が必要なapktoolバージョンです
Ibotpeaches git hubから手動でインストールする必要があります
ここでいくつかの良い情報
https://www.youtube.com/watch?v=kB6s10Uwpcs
およびkali用の自動スクリプト https://github.com/catenatedgoose?tab=repositories