转载出处

原文章地址

mac环境下工具清单:

1、Apktool :将apk文件进行反编译,得到字节码(classes.dex)和资源文件及其他H5文件等。
2、dex2jar:将反编译后的classes.dex文件转化为.jar文件,此步骤是将DEX字节码转换为class字节码
3、mac下java反编译工具如jd-gui:用于将.jar文件转换成java代码。

第一步:Apktool 工具下载

下载官网:apktool下载请点击

这里安装方式选择homebrew 安装方式。这种首先需要安装homebrew (过程会比较慢)。
安装成功后 安装路径为 /usr/local/Cellar/ 中,可执行文件在 /usr/local/bin 中。
测试是否安装成功:执行apktool 会弹出如下:

使用命令前需要将apk文件copy到 /usr/local/bin/ 下,这步很重要,否则无法使用命令。
使用命令:可参考https://ibotpeaches.github.io/Apktool/documentation/
(1)使用 apktool d test.apk

执行命令后会生成反编译的结构目录如下:

(2)此种方式反编译的包中不会出现classes.dex 字节码, 如果想看到classes.dex 字节码需要使用如下命令:
apktool d -s test.apk
或者通过如下命令进行回编译:
在(1)的基础上进行执行如下命令

apktool b [反编译的文件夹]

执行命令后会 在test下生成build文件夹,classes.dex在build/apk/ 下。

当然还有一种方式就是使用解压缩软件解apk文件也可以得到classes.dex 。

第二步:dex2jar工具下载及使用

1、下载dex2jar
提供两个地址:
(1)源码build 方式:https://github.com/pxb1988/dex2jar ,将zip包下载后解压,在根目录下执行以下几步。

In the root directory run: ./gradlew distZip
cd dex-tools/build/distributions
Unzip the file dex-tools-2.1-SNAPSHOT.zip (file size should be ~5 MB)
按照上述步骤执行,我们最终得到 dex-tools-2.1-SNAPSHOT文件夹。

(2)第二种方式:https://sourceforge.net/projects/dex2jar/ 下载后直接解压即可用。
解压后的文件夹如下:

2、d2j-dex2jar.sh和d2j_invoke.sh添加运行权限:

chmod +x d2j-dex2jar.sh
chmod +x d2j_invoke.sh

3、将classes.dex 文件拷贝到dex2jar-2.0目录下 执行命令生成jar 包 ,执行如下命令:

sh d2j-dex2jar.sh classes.dex

则会在当前目录下生成classes-dex2jar.jar。

第三步:将jar反编译为java文件

(1)下载jd-gui,解压后即可使用,将jar 拖入即可进行反编译。
http://java-decompiler.github.io/

Mac下Android 反编译相关推荐

  1. android mac转数据格式转换,mac环境下Android 反编译

    一.需要的工具 apktool:反编译APK文件,得到classes.dex文件,同时也能获取到资源文件以及布局文件. dex2jar:将反编译后的classes.dex文件转化为.jar文件. jd ...

  2. 在Mac下使用反编译工具

    前言 之前一直都是使用windows开发,小编也是个穷比,用的还是大学时候使用的windows dell本,里面加了各种配置,这里悄悄的说一句,能打lol就够了,哈哈哈.这些都是题外话,进入正题,新入 ...

  3. MAC端Android反编译工具及使用

    [写在前面] 今天在做项目时遇到一个困难,需求是这样的: 模仿csdn客户端,实现app端查看博文内容,要求不使用H5混合开发实现文章在界面上的显示: 图1-1 简书博文界面 我想到了简书客户端有实现 ...

  4. MAC下的反编译、反汇编和调试神器Hopper Disassembler

    很久没去pediy了,偶尔去看下,还真有新东西 mac下的反汇编工具,貌似参考ida做的,看起来很不错 地址在这里 官网:http://www.hopperapp.com/ 传送门:http://pa ...

  5. mac 下 Android apk反编译详细步骤

    mac环境下工具清单: 1.Apktool :将apk文件进行反编译,得到字节码(classes.dex)和资源文件及其他H5文件等. 2.dex2jar:将反编译后的classes.dex文件转化为 ...

  6. Android 反编译利器,jadx 的高级技巧

    一.前言 今天介绍一个非常好用的反编译的工具 jadx(Java,Dex反编译器) .jadx 的功能非常的强大,对我而言,基本上满足日常反编译需求. jadx 优点: 图形化的界面. 拖拽式的操作. ...

  7. android studio日志不打印,Mac 下 Android Studio 不打印日志的解决办法

    Mac 下 Android Studio 不打印日志的解决办法 Mac 下 Android Studio 不打印日志的解决办法 前言: 在 Mac 下使用 Android Studio 时常会遇到 A ...

  8. Android 反编译整理

    Android 反编译需要用到以下几个工具: Apktool: 这个工具的作用是: It is a tool for reverse engineering 3rd party, closed, bi ...

  9. Android反编译odex然后重新打包

    #Android反编译odex然后重新打包 最近不知道怎么回事,突然把我那刷了氧OS的root了,然后就开始好奇起来氢OS所带有的那些本地化的东西,比如通话录音就是典型的一个之一.其中也做了很多的尝试 ...

  10. 【Android 安全】DEX 加密 ( 常用 Android 反编译工具 | apktool | dex2jar | enjarify | jd-gui | jadx )

    文章目录 一.apktool 1.apktool 简介 2.直接解压 3.使用 apktool 反编译 4.使用 apktool 重新打包 二.dex2jar 1.dex2jar 简介 2.dex2j ...

最新文章

  1. 网络管理员比赛回顾01-基本操作和简单vlan
  2. 如何用你最熟悉的 SQL 来查询 Elasticsearch 中的数据?
  3. Day4-springmvc中文乱码处理和客户端跳转
  4. 面试官问:平常你是怎么对 Java 服务进行调优的?
  5. The Definitive Guide to SWT and JFace 目录
  6. 队长开卖自家产“翠香”猕猴桃
  7. 线程安全-常用的模式
  8. C语言fwrite函数了解
  9. python操作数据库慢_MySQL数据库之python 拉取mysql 慢日志
  10. Data-mediator入门系列2
  11. 静态绑定(前期绑定)
  12. 阿里云成为云原生计算基金会金牌会员
  13. ssm毕设项目高校饭堂管理系统8gmjo(java+VUE+Mybatis+Maven+Mysql+sprnig)
  14. 小猫咪,Naughty baby
  15. tftp命令使用说明
  16. 【Flink 监控系列】Flink 自定义 kafka metrics reporter 上报 metrics 到 kafka
  17. Linux系统分区备份工具,linux系统备份工具:clonezilla
  18. 经典动态规划----饥饿的牛(hunger)
  19. 计算机网络共享打不开,电脑只要打开共享提示“无法启用共享访问”如何解决...
  20. 生产管理系统是什么?它有哪些功能模块?

热门文章

  1. Book-Manager 图书管理系统(基于SpringBoot、MyBatis)
  2. HTML5 播放视频代码
  3. 通过python爬虫程序爬取未来几日的天气状况
  4. 多个Gbase集群间表同步思路
  5. 视频格式mkv、mp4、avi、flv、mov、wmv、webm特点和区别
  6. 怎么快速把wmv视频格式转换成mp4视频
  7. 用计算机分析卫星云图 进行实时天气,卫星云图,气象卫星云图,卫星云图高清实时滚动播放 - 围观天气...
  8. 五笔字根表识别码图_五笔字根识别码学习
  9. 图片怎么做雕刻路径_浮雕做图的简要步骤
  10. Multistage GAN for Fabric Defect Detection 用于织物检测的多级GAN