首页
社区
课程
招聘
[分享]apk文件结构-反编译三剑客
发表于: 2022-2-2 15:27 5232

[分享]apk文件结构-反编译三剑客

2022-2-2 15:27
5232

  1.apktool

一款可以将apk反编译和回编译的命令行工具。

  2.apk文件我们使用压缩包解压之后得到的都是二进制的,可以使用这款工具进行反编译,得到smali代码,修改后回编译。

  3.将apk文件放到工具目录下,输入apktool d xxx.apk,d表示反编译。

C:\Users\LENOVO\Desktop\AndroidKiller\bin\apktool>apktool d xxx.apk
I: 使用 ShakaApktool 2.0.0-20150914
I: 正在加载资源列表...
I: 反编译 AndroidManifest.xml 与资源...
I: 正在从框架文件加载资源列表: C:\Users\LENOVO\apktool\framework\1.apk
I: 常规资源列表...
I: 反编译资源文件...
I: 反编译 values / XMLs...
I: 反编译 classes.dex...
I: 复制 assets 和 libs...
I: 复制未知文件...
I: 复制原始文件...

  4.smali文件夹存放的就是我们反编译的代码,AndroidManifest.xml文件里面可以看哪一个是我们的的程序主界面,看main。

<activity android:label="@string/app_name" android:name=".MainActivity">

<intent-filter>

<action android:name="android.intent.action.MAIN"/>

<category android:name="android.intent.category.LAUNCHER"/>

</intent-filter>

</activity>

  1.dex2jar

一款可以将dex文件转换为jar文件的命令行工具

  2.可以将apk里面的.dex文件反编译成jar文件。

  3.将apk文件解压出来,找到.dex文件,复制到工具目录下,打开cmd窗口,输入d2j-dex2jar classes.dex

C:\Users\LENOVO\Desktop\AndroidKiller\bin\dex2jar>d2j-dex2jar classes.dex

dex2jar classes.dex -> .\classes-dex2jar.jar

  4.使用这个工具后就生成classes-dex2jar.jar文件了。

  1.jd-gui

图形界面反编译工具,将jar反编译为java代码

  2.得到的jar文件如果需要查看源码就需要借助工具将jar反编译成jar代码。

  3.将classes-dex2jar.jar拷贝到工具目录下,打开工具的exe程序,将jar拖进来,就可以看到源码了。


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 2
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//