Android APK反编译 apktool使用教程

博观而约取,厚积而薄发。这篇文章主要讲述Android APK反编译 apktool使用教程相关的知识,希望能为你提供帮助。
前言:最近我在使用Android Studio混淆打包release版本,打包是否成功?自然想到了反编译。然后百度“ apk反编译” ,出来最多的是apktool反编译。百度也真是越来越水了,反正百度出来的教程都是N年前的,现在早就不能用了。很多博主也都不跟新博客了,然后随着jdk发展apktool也跟新很多代了。所有有些博主的内容,已经没法儿用了。
比如:
【Android APK反编译 apktool使用教程】http://blog.csdn.net/vipzjyno1/article/details/21039349/#reply
这个博主,有些地方说得还不错。但是apktool下载版本和用法早就过时了,现在已经没法儿用了。
工具介绍: 
apktool   
      作用:主要查看res文件下xml文件、androidManifest.xml和图片。(注意:如果直接解压.apk文件,xml文件打开全部是乱码)
dex2jar
      作用:将apk反编译成Java源码(classes.dex转化成jar文件)
jd-gui
      作用:查看APK中classes.dex转化成出的jar文件,即源码文件
新版本apktool用法: 1、下载: https://ibotpeaches.github.io/Apktool/install/  

Android APK反编译 apktool使用教程

文章图片
  当然了上面这个链接和图片描述的可能也会变。 目前就是下载两个文件apktool.bat和apktool.jar(这个如果你下载的文件有版本号,比如apktool_2.2.1.jar,就要改名字为apktool.jar), 然后把上面两个文件都放到C://Windows下面。(我是windows系统,其他系统按照自己的来)   2、使用方法   https://ibotpeaches.github.io/Apktool/#   官网教程  
$ apktool d test.apk I: Using Apktool 2.2.1 on test.apk I: Loading resource table... I: Decoding AndroidManifest.xml with resources... I: Loading resource table from file: 1.apk I: Regular manifest package... I: Decoding file-resources... I: Decoding values */* XMLs... I: Baksmaling classes.dex... I: Copying assets and libs... I: Copying unknown files... I: Copying original files... $ apktool b test I: Using Apktool 2.2.1 on test I: Checking whether sources has changed... I: Smaling smali folder into classes.dex... I: Checking whether resources has changed... I: Building resources... I: Building apk file... I: Copying unknown files/dir...

其实就是,运行CMD,进入比如app-release.apk所在目录,然后运行apktool d app-release.apk就可以了,默认解压的文件就在app-release.apk所在目录。    
Android APK反编译 apktool使用教程

文章图片
 
Android APK反编译 apktool使用教程

文章图片

Android APK反编译 apktool使用教程

文章图片

 
最后,如果我上面的方法不能用了,请看英文的原网页怎么说。
 
 
 
比如:
http://blog.csdn.net/vipzjyno1/article/details/21039349/#reply
 
dex2jar
      作用:将apk反编译成Java源码(classes.dex转化成jar文件)
jd-gui
作用:查看APK中classes.dex转化成出的jar文件,即源码文件
 
Smali2javaUI 对于博主说得,先dex2jar把classes.dex转为jar,再jd-gui把jar转为源码*.java文件。 现在可以用Smali2JavaUI这个软件,一部到位。可以把这两个步骤化为一个步骤。   所以,如果只想反编译看*.java文件的话,只用Smali2JavaUI软件就可以了。 这个软件可以直接打开***.apk文件,然后就直接看到*.java文件了。 Smali2JavaUI最新版本下载链接http://www.hensence.com/cn/smali2java/#Download   http://blog.csdn.net/ysc123shift/article/details/52985435

    推荐阅读