将.Java文件转换为.Smali文件

我使用APKTool对Android应用程序进行了反向工程,并获得了.Smali文件作为源代码输出。我将带有应用程序的.Smali文件转换为.Java文件。我能够成功编辑.Java文件,但现在我想将它们转换回.Smali,以便可以使用新的.Smali文件重新编译应用程序。当我只留下.Java文件时,它不会重新编译并给出一些错误。我在互联网上找不到有关将.Java编译为.Smali的任何信息,希望大家能对我有所帮助。

先感谢您,

回答:

您可以使用普通的Java编译器来编译Java类,然后使用Android的“

dx”实用程序将已编译的.class文件转换为dex文件。然后在dex文件上运行baksmali以生成smali文件。

例如,假设您在名为“ HelloWorld.java”的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

以上是 将.Java文件转换为.Smali文件 的全部内容, 来源链接: utcz.com/qa/429964.html

回到顶部