Android Apk到纯Java文件
我在Android studio中开发了一个Android应用程序,并将其apk上传到了Google Play商店。但是我丢失了应用程序的所有文件(java+xml) 现在我只有来自play store的apk,还有上传到Google play store之前的apk(执行加密之前的apk) 现在我想获取应用程序的所有java文件和XML,以更新应用程序。我已经尝试了前面StackOverflow问题中提到的所有步骤,但是我无法正确获取Java文件。我能够正确地获取XML。我得到的Java文件格式有些不可理解(部分编译/转换) 因此,我这里的问题是,我是否可以在不进行任何编译/转换的情况下将所有java文件作为普通java文件获取Android Apk到纯Java文件,android,apk,Android,Apk,我在Android studio中开发了一个Android应用程序,并将其apk上传到了Google Play商店。但是我丢失了应用程序的所有文件(java+xml) 现在我只有来自play store的apk,还有上传到Google play store之前的apk(执行加密之前的apk) 现在我想获取应用程序的所有java文件和XML,以更新应用程序。我已经尝试了前面StackOverflow问题中提到的所有步骤,但是我无法正确获取Java文件。我能够正确地获取XML。我得到的Java文件格
请帮帮我。提前一吨谢谢不,你不能。除非经过逆向工程过程,像dex2jar这样的东西 不,你不能。除非经过逆向工程过程,像dex2jar这样的东西 第一步是提取APK归档文件,并将名为
classes.dex的文件复制到其他目录。接下来,您需要将dex
文件转换为jar
格式。
你可以用它。请记住,您必须首先使用gradle构建它。
最后一步是将java类
文件反编译为适当的java
文件。使用。
瞧,你有你的源代码。也就是说,如果您没有使用Proguard
对代码进行模糊处理。第一步是提取APK归档文件,并将名为classes.dex的文件复制到其他目录。接下来,您需要将dex
文件转换为jar
格式。
你可以用它。请记住,您必须首先使用gradle构建它。
最后一步是将java类
文件反编译为适当的java
文件。使用。
瞧,你有你的源代码。也就是说,如果您没有使用Proguard
来混淆您的代码。我认为您无法按原样获取它们,变量名,甚至方法名可能是一些随机字符,或者就像integer1
string5
那样,因为编译时不会存储名称,每一件事都会被转换成操作和地址,所以当它们被反转回来时,它们只会被随机字符或无意义的单词填满。你会明白的。是的,我还得到了一些随机字符串来代替变量名和方法名。。。我会试试的。可能是重复的我不认为你能得到它们原来的样子,变量名,甚至方法名可能是一些随机字符,或者就像integer1
string5
这样,因为当它们被编译时,名称没有被存储,所有的东西都会被更改为操作和地址,所以,当它们被倒转回来时,它们只会被随机字符或无意义的单词填满。你会明白的。是的,我还得到了一些随机字符串来代替变量名和方法名。。。我会尝试一下。可能重复尝试过的dex2jar和所有内容……即使在使用之后,我得到的java文件也有一些毫无意义的变量名/方法名,这使得整个文件看起来很奇怪。@AR5抱歉,伙计。我猜你的apk文件也受到proguard的保护。。。这意味着源代码被混淆了。通常,逆向工程师需要几天才能完成逆向过程…@AR5对不起,伙计。我猜你的apk文件也受到proguard的保护。。。这意味着源代码被混淆了。通常,逆向工程师需要几天才能完成逆向过程…哦。你能告诉我这个反向工程过程是什么吗?试过了dex2jar和所有的东西……即使在使用之后,我得到的java文件也有一些毫无意义的变量名/方法名,这使得整个文件看起来很奇怪。@AR5抱歉,伙计。我猜你的apk文件也受到proguard的保护。。。这意味着源代码被混淆了。通常,逆向工程师需要几天才能完成逆向过程…@AR5对不起,伙计。我猜你的apk文件也受到proguard的保护。。。这意味着源代码被混淆了。通常,逆向工程师需要几天才能完成逆向过程…哦。你能告诉我这个反向工程过程是什么吗?这个过程也给了我一些java文件,这些文件的var名称/方法名称毫无意义…@AR5它表明你在构建APK之前使用了Proguard
来混淆你的代码。你在这里无能为力。哦。。。所以没有办法得到它ryt:(这个过程也给了我一些java文件,这些文件有着毫无意义的变量名/方法名…@AR5它表明你在构建APK之前使用了Proguard
来混淆你的代码。你在这里无能为力。哦…所以没有办法得到它ryt:(