我正在尝试对apk进行反向工程,我想查看SDK和NDK文件。 我尝试了多种方法,例如apktool和在android studio中打开apk,但都没有成功。此外,如果我编辑代码并重建已签名的apk,是否需要在有根设备上运行它。
答案 0 :(得分:2)
.apk文件的解码步骤,分步方法:
步骤1:
1)。新建一个文件夹,然后复制您想要的.apk文件 解码。 2)。现在,将此.apk文件的扩展名重命名为.zip(例如, 从filename.apk重命名为filename.zip)并保存。 3)。现在轮到你 可以访问classes.dex文件等。在此阶段,您可以 查看可绘制对象,而不是xml和java文件,因此继续。
第2步:
1)。现在,将此.zip文件解压缩到同一文件夹(或NEW FOLDER)中。 2)。下载dex2jar并将其解压缩到同一文件夹(或新建) 夹)。 3)。将classes.dex文件移动到dex2jar文件夹中。 4)。 现在打开命令提示符并将目录更改为该文件夹(或新建) 夹)。 5)。然后编写d2j-dex2jar classes.dex(适用于Mac终端或 ubuntu编写./d2j-dex2jar.sh classes.dex),然后按Enter键。 6)。您 现在在同一文件夹中有classes.dex.dex2jar文件。 7)。 下载java decompiler,双击jd-gui,单击打开文件, 并从该文件夹中打开classes.dex.dex2jar文件:现在您获得了class 文件。 8)。保存所有这些类文件(在jd-gui中,单击文件-> 通过src名称保存所有源)。在此阶段,您将获得Java源代码 但是.xml文件仍然不可读,因此继续。
第3步:
1)。现在打开另一个新文件夹
2)。放入您要解码的.apk文件3)。下载 最新版本的apktool和apktool安装窗口(均可 从相同的链接下载)并将它们放在相同的文件夹中4)。 打开命令窗口apktool d myApp.apk(其中myApp.apk表示 您要解码的文件名)5)。现在您在 该文件夹,并且可以轻松读取apk的xml文件。这个解决方案是 从该StactOverflow网站Check Here
中提取
您可以在此处libraries
下载所有必需的库。