我能使用密钥库反编译项目吗?
我能使用密钥库反编译项目吗?
这个问题已经在这里有了答案:
我丢失了我含有我的Android工程的USB。 我只测试了那个应用程序,所以我只有apk文件。我可以将apk提取到项目中吗?
从这个链接开始
首先你需要将apk反编译成源代码,为了反编译apk文件,使用以下步骤:
步骤1:
创建一个新文件夹并复制您想要解码的.apk文件到该文件夹中。
现在将此.apk文件的扩展名更改为.zip(例如:从filename.apk更名为filename.zip),并保存。现在您可以访问classes.dex等文件,但是不能访问xml和java文件,所以请继续。
步骤2:
现在在同一个文件夹(或新文件夹)中, 解压此.zip文件。
下载dex2jar并将其解压缩到相同的文件夹(或新文件夹)中。
将classes.dex文件移动到dex2jar文件夹中。
现在打开命令提示符并更改目录到该文件夹(或新文件夹)。然后写入d2j-dex2jar classes.dex并按回车。现在您在同一个文件夹中拥有classes_dex2jar.jar文件。
下载java decompiler,双击jd-gui,点击打开文件,打开文件夹中的classes.dex.dex2jar文件:现在您将得到类文件。
通过src名称保存所有这些类文件(在jd-gui中,单击文件->保存所有源文件)。此阶段您将获得java源代码,但是.xml文件仍然无法读取,请继续。
步骤3:
现在打开另一个新文件夹。
将想要解码的.apk文件放入其中。
下载最新版本的apktool (两个文件可以从同一个链接下载),并将它们放在同一个文件夹中
下载framework-res.apk并将其放在同一个文件夹中(并非所有apk文件都需要此文件,但也无妨)
打开命令窗口
导航到APKtool的根目录,键入以下命令:apktool if framework-res.apk
apktool d myApp.apk(其中myApp.apk表示您要解码的文件名)
现在您将在该文件夹中得到一个包含文件夹的文件夹,并且可以轻松地阅读apk的xml文件。
步骤4:
这不是任何步骤,只需将两个文件夹(在此例中都是新文件夹)的内容复制到单个文件夹中,并更新源代码......