Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/223.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在反编译和修改以前的apk后重新编译新的apk_Java_Android_Decompiling_Recompile_Apktool - Fatal编程技术网

Java 在反编译和修改以前的apk后重新编译新的apk

Java 在反编译和修改以前的apk后重新编译新的apk,java,android,decompiling,recompile,apktool,Java,Android,Decompiling,Recompile,Apktool,我使用apk工具(命令:“apktool d file.apk”)反编译了一个apk文件,并更改了一些xml部分 此外,我还有使用dex2jar的jar文件。我用JavaDE编译器打开jar并选择“保存所有源代码”。然后我将其解压缩并更改了部分代码(对其进行了修改) 现在我应该如何重新生成新的apk文件??我尝试将java源代码从apk工具复制到文件夹中,并将它们重新编译在一起,但没有成功。我该怎么办???您正在尝试混合无法混合的技术。重建期间的Apktool要求文件采用预组装的dex格式或各种

我使用apk工具(命令:“apktool d file.apk”)反编译了一个apk文件,并更改了一些xml部分

此外,我还有使用dex2jar的jar文件。我用JavaDE编译器打开jar并选择“保存所有源代码”。然后我将其解压缩并更改了部分代码(对其进行了修改)


现在我应该如何重新生成新的apk文件??我尝试将java源代码从apk工具复制到文件夹中,并将它们重新编译在一起,但没有成功。我该怎么办???

您正在尝试混合无法混合的技术。重建期间的Apktool要求文件采用预组装的
dex
格式或各种反汇编的
.smali
文件

Apktool不支持从java源代码构建。更不用说,它无法工作,因为Apktool无法重写java源代码中的资源ID。您可以阅读技术说明

您需要构建java源代码,然后使用
baksmali
获得
.smali
等价物,并在apktool中使用它们