AndroidアプリケーションをAPKToolでリバースエンジニアリングし、.Smaliファイルをソースコード出力として取得しました。アプリケーションで.Smaliファイルを.Javaファイルに変換しました。Javaを正常に編集することができました新しい.Smaliファイルを使用してアプリケーションを再コンパイルできるように、ファイルを.Smaliに戻す必要があります。そこに.Javaファイルを残しただけでは、再コンパイルされず、エラーが発生します。見つかりませんでしたインターネットで.Javaを.Smaliにコンパイルすることについては何でもですので、皆さんが私を助けてくれることを願っています。
前もって感謝します、
Javaクラスを通常のJavaコンパイラを使用してコンパイルし、Androidの「dx」ユーティリティを使用して、コンパイルされた.classファイルをdexファイルに変換することができます。そして、dexファイルでbaksmaliを実行して、smaliファイルを生成します。
たとえば、Java "HelloWorld.Java"という名前のファイルに次のコードがあるとします。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
Smaliに変換するには:
javac HelloWorld.Java
dx --dex --output=classes.dex HelloWorld.class
baksmali classes.dex
Java2smaliを試してください: https://github.com/ollide/intellij-Java2smali
これは、JavaをSmaliに変換するために使用されるアプリケーションです。