android反编译详解暨如何防止反编译暨apk解析快速获取包名

本文介绍了如何通过apktool、dex2jar和jd-gui等工具进行Android应用的反编译,以获取资源文件和源码。同时,讲解了如何在不同版本的SDK中配置proguard来防止应用被反编译。最后,分享了一个快速获取APK包名的工具。

反编译

在开发过程中,我们往往会被各种app的精致布局和动画效果所吸引,这时我们就会想着模仿他们,但往往我们不知从何入手。这时反编译就出现了,本人的反编译是为了借鉴别人的代码,更好的学习,提高自己(自恋ing...)


工具下载地址:点击


工具介绍:

apktool

资源文件获取,可以提取出图片文件和布局文件进行使用查看

dex2jar

将apk反编译成java源码(classes.dex转化成jar文件)

jd-gui

查看classes.dex转化成出的jar文件


步骤:

1、解压工具apktool,得到aapt.exeapktool.batapktool.jar,将需要反编译的APK文件放到该目录下,运行-CMD,定位到apktool.bat所在文件夹,输入命令:apktool.bat d -f  jinritoutiao_427.apk  test  
jinritoutiao_427.apk:需要反编译的apk文件名

test 反编译后资源文件存放的目录名

成功后,出现test文件夹,点击可以查看资源文件(图片、xml布局等):

2、解压工具中的dex2jarjd-gui ,将要反编译的APK后缀名改为.rar或者.zip,并解压,得到其中的classes.dex文件,将classes.dex放到之前解压出来的工具dex2jar-0.0.9.15文件夹内,在命令行下定位到dex2jar.bat所在目录,输入命令dex2jar.batclasses.dex

成功后,在该目录下会生成文件classes_dex2jar.jar



打开工具jd-gui文件夹里的jd-gui.exe,用该工具打开前面生成的classes_dex2jar.jar文件,便可以看到源码了

效果如下:



防止反编译

sdk2.3以上的直接在default.properties文件添加一句“proguard.config=proguard.cfg”就可以了

  1. # This file is automatically generated by Android Tools.  
  2. # Do not modify this file -- YOUR CHANGES WILL BE ERASED!  
  3. #  
  4. # This file must be checked in Version Control Systems.  
  5. #  
  6. # To customize properties used by the Ant build system use,  
  7. # "build.properties", and override values to adapt the script to your  
  8. # project structure.  
  9.   
  10. # Project target.  
  11. target=android-19  
  12. proguard.config=proguard.cfg  

sdk2.3以下的记得把高版本中的proguard.cfg(文件位置:sdk\tools\lib\proguard.cfg文件复制到自己的项目中,然后进行上面的操作


一步获取包名

工具下载地址:点击

解压上述下载的工具包,直接运行

效果如下:



转载请标明出处:http://blog.csdn.net/wei18359100306/article/details/41547333


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值