Android反编译学习

本文详细介绍了使用反编译工具(如 AXMLPrinter2.jar、baksmali.jar 和 smali.jar)来反编译Android应用的过程,并通过实例展示了如何反编译自己开发的应用。文章还总结了反编译的技巧和注意事项,为开发者提供了一套实用的学习路径。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  学习反编译目的不是为了盗取别人的成果,而是能够加快自己的学习进度,不像以前为了查一个小功能网上四处寻找,无数种解决办法,最后测试下来只有一种正确。之前做delphi和.net也经常用reflector去反编译*.dll文件,今天才发现android编译出的*.apk文件也能反编译,学习了!

  首先从反编译自己开发的系统(南青信息查询Android客户端)来学习反编译开始,好像很有趣,偷窥别人不好意思,偷窥自己总可以吧。

 

反编译工具

1.AXMLPrinter2.jar

2.baksmali.jar

3.smali.jar

【*.xml文件反编译

项目目录结构

cmd命令:java -jar AXMLPrinter2.jar main.xml > main.txt

反编译前后对比: 

res->layout->main.xml源文件

生成出来的main.txt

【*.dex文件反编译

 将Info.apk里的classes.dex解压到tools目录

cmd命令:java -jar baksmali.jar -o classout/ classes.dex

生成classout文件夹

反编译前后对比:

反编译前(chuangbo)

反编译后

 

前后差别还是挺大的,不过仔细琢磨还是能得到想要的东西!

 

 

Android学习及如何利用android来赚钱

android反编译小结

Android 中的拿来主义(编译,反编译,AXMLPrinter2,smali,baksmali)!


作者:水煮鱼
出处:http://blog.youkuaiyun.com/sheshou2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值