smail与java的联系_安卓逆向学习----smali,dex,java等文件之间转换关系

与安卓应用相关的文件类型有许多,他们之间通过编译、反编译可以互相转换,下面总结一下这些文件类型,这些文件类型有.apk .java .class .jar .smali .dex ,自己也在学习之中,有什么错误或者不足欢迎指正

逆向的过程一般是:输入apk---apktool解析为smali和dex---dex2jar转换为jar---使用jd-gui查看java代码

这些文件的关系如图:

12dd8f3fe2e282056e4b88a467c4155d.png

1.apk文件

这是安卓应用安装包的文件格式,本质是一个压缩包,可以将后缀名改为zip直接解压,解压缩后会得到dex文件、资源文件、so文件等

2.dex文件

dalvik执行文件,通过apktool或者直接解压缩得到。

adb shell中的dalvik命令可以直接执行dex文件

3.jar文件

是一种归档文件,以zip格式构建,包含java和一些元数与资源文件

4.smali文件

dalvik字节码文件,一种中间语言,相当于dalvik虚拟机的汇编语言

5.class文件

java虚拟机的可执行文件

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值