最新在反编译别人的apk,有时候看到别人的app有很炫的效果,就想知道别人是怎么样实现的,顺便自己参考,借鉴一下,下一次如果工作中碰到这个问题就知道怎么实现了.最近恰好放假三天,就研究了一下,一般别人的app都对代码进行了混淆,但是我们还是可以反编译看到代码,只是方法.变量.类名用字母替代了.

我这边用到了两套反编译工具,你们可以结合使用.最后我会提供这些工具的下载地址,以下这些反编译工具的必要条件电脑必须要装jdk.

一:apktool+dex2jar+jd-gui-windows-1.4.0

1).apktool:APKTool是GOOGLE提供的APK编译工具,能够反编译及回编译apk,,我们一般都是用来反编译资源文件.代码反编译之后都是smali文件

     2).dex2jar dex2jar 是一款很不错的将android的,dex文件转换成Java的class文件的转换工具,把apk里面的dex反编译成jar文件

     3).jd-gui-windows-1.4.0 可以反编译jar文件,导出java源码,所以这个工具根据必须跟第二个工具结合使用

二:jadx-0.6.0

对比之前 apktool(解包apk) + dex2jar(将.dex转换成.jar) + jd-gui (查看.jar文件)反编译三件套, jadx的优点在于:可以一行命令直接反编译恢复出.java文件

下面我来说说这写工具如何使用,并且带上图片.让大家一看就懂.

一.apktool使用步骤讲解

1).解压apktool压缩包   随便解压到哪里.

2).把你要反编译的apk复制到apktool文件夹里面.

3).打开cmd窗口  cd进入apktool文件夹

4).输入命令 apktool d  "apk包名"   -o  "反编译出来源码存放的文件夹名字"

5).cmd操作,以及反编译之后的截图如下:

 二.dex2jar 使用步骤讲解

1).解压dex2jar-2.0.zip

        2).把你要反编译的apk后缀名改成.zip

        3).把里面的.dex文件解压出来

        4).把.dex文件复制到dex2jar文件夹下

        5).cmd进入dex2jar文件夹下

        6).输入命令:d2j-dex2jar  classes.dex      反编译之后可以看到一个classes-dex2jar.jar文件

7).附上效果图:

  

三.jd-gui-windows-1.4.0 使用步骤讲解

1).解压zip文件,打开里面的exe文件   把dex2jar反编译出来的jar包文件拖进去就可以,这里我就不贴出效果图了,如果这个不会我也没办法了

四.jadx-0.6.0

1).需要先把apk拷贝到jadx目录的bin目录下

    2).打开cmd窗口  cd进入jadx的bin目录

    3).在bin目录新建out文件夹

    4).cmd窗口执行命令  jadx -d "源码输出文件夹"  "要反编译的apk文件"

5).这个反编译工具时间会长一些,一定要等它log日志全部打印完毕.

6).效果图如下:

写到这里,本篇教程就结束了,最后提醒大家一句,电脑一定要装jdk.

今天看了反法西斯的阅兵,感觉中国的实力也越来越强,在这个全面信息时代,作为一名码农,我们也要加油学习,跟上祖国的脚步.不要拖祖国后腿哈哈...感觉自己废话越来越多了。

点击下载工具

android app反编译的更多相关文章

  1. Android apk反编译基础(apktoos)图文教程

    本文主要介绍了Android apk反编译基础,使用的工具是apktoos,我们将用图文的方式说明apktoos工具的使用方式,你可以参考这个方法反编译其它APK试试看了 很久有写过一个广工图书馆主页 ...

  2. APP反编译第一课《如何找到核心代码》

    相信很多人都应该会去接触APP反编译,本小七给大家带来入门级别套路,自己也在慢慢摸索学习,一起成长吧.第一步,反编译需要的工具有:一.java环境,其实这里你只要安装了burp就不用管这个的二.apk ...

  3. Xamarin android如何反编译apk文件

    Xamarin android 如何反编译 apk文件 这里推荐一款XamarinAndroid开发的小游戏,撸棍英雄,游戏很简单,的确的是有点大.等一下我们来翻翻译这个Xamarin Android ...

  4. App反编译二次打包常见问题处理

    1.二次打包时报错:Error retrieving parent for item: No resource found that matches the given name 如: D:\用户文件 ...

  5. 《Android逆向反编译代码注入》 - 逆向安全入门必看视频教程

      适合人群: Android开发人员.逆向反编译开发人员.以及对Android逆向安全感兴趣的朋友. 视频地址: 51CTO学院:https://edu.51cto.com/course/24485 ...

  6. uniapp解决测评有组件导出风险,解决APP反编译,回编译后app无法打开的问题

    1.APP反编译 使用hbx云打包,打包出apk 拿到apk后,先下载反编译工具 https://pan.baidu.com/s/1A5D8x_pdSELlHYl-Wl6Xnw 提取码 6vzd 使用 ...

  7. android apk 反编译

    Apk文件结构 apk文件实际是一个zip压缩包,可以通过解压缩工具解开.以下是我们用zip解开helloworld.apk文件后看到的内容.可以看到其结构跟新建立的工程结构有些类似. java代码: ...

  8. 【Android 应用开发】 Android APK 反编译 混淆 反编译后重编译

    反编译工具 : 总结了一下 linux, windows, mac 上的版本, 一起放到 CSDN 上下载; -- CSDN 下载地址 : http://download.csdn.net/detai ...

  9. android 防止反编译的若干方法

    第一种方式:混淆策略 混淆策略是每个应用必须增加的一种防护策略,同时他不仅是为了防护,也是为了减小应用安装包的大小,所以他是每个应用发版之前必须要添加的一项功能,现在混淆策略一般有两种: 对代码的混淆 ...

随机推荐

  1. asp.net,cookie,写cookie,取cookie

    Cookie是一段文本信息,在客户端存储 Cookie 是 ASP.NET 的会话状态将请求与会话关联的方法之一.Cookie 也可以直接用于在请求之间保持数据,但数据随后将存储在客户端并随每个请求一 ...

  2. 线程的Alertable与User APC

    在使用插User APC注入DLL时,经常面临一个问题,那就是线程必须是处于Alertable模式才能注入成功.但一直对这个Alertable的含义不甚清楚,今天总算是把这个梗消化了. 微软对Aler ...

  3. linux下的tcp连接超时

    最近需要写一个linux下的通信程序, 通信模块用的是Qt的QTcpSocket. 最后程序需要增加一个断网检测, 在windows下调试没问题, 拔网线, 断网口都能马上检测到, 但到了部署到lin ...

  4. python面试总结

    1.python的优势 1.1 python是一门胶水语言,能够结合各种语言 1.2 python是支持面向对象编程 1.3 python是完全开放源代码,有大量的技术支持文档, 1.4 可移植,py ...

  5. gulp-less解决遇到错误停止执行task

    来龙去脉 在用less+gulp开发时,有时候代码还没写完整,不小心保存了一下,然后gulp就开始执行gulp-less的task. 但是代码是有问题的,这时候会输出一个Potentially unh ...

  6. OpenGL Insights 阅读有感 - Tile Based架构下的性能调校 翻译

    Performance Tunning for Tile-Based Architecture Tile-Based架构下的性能调校 by Bruce Merry GameKnife译 译序 在大概1 ...

  7. css3 linear-gradient实现页面加载进度条效果

    最终效果图: html结构: <div>    <p class="p1">        <span></span>    < ...

  8. nodejs学习之events

    在node里许多对象都发出事件:一个net.Server对象每次一个连接到来,都发出一个事件,一个fs.readStream对象在文件打开时放出一个事件.所有能放出事件的对象都是event.Event ...

  9. 在 Windows 上安装Rabbit MQ 指南

    rabbitMQ是一个在AMQP协议标准基础上完整的,可服用的企业消息系统.他遵循Mozilla Public License开源协议.采用 Erlang 实现的工业级的消息队列(MQ)服务器. Ra ...

  10. (源码下载)高灵活度,高适用性,高性能,轻量级的 ORM 实现

    我在上一篇博客中简单说明了一个面向内存数据集的“ORM”的实现方法,也提到我的设计实现或许不能称之为“ORM”,姑且称之为 S-ORM吧. 可能有些小伙伴没有理解我的思路和目的,与传统ORM框架做了简 ...