MAC上Apktool的安装

官网链接

 
image.png

使用步骤如图1-6

  • 第一:下载一个shell脚本,保存的名字就是”apktool”,不要带.sh后缀。可以复制到sublimetext,然后保存.记得删除后缀。

  • 第二:下载最新的apktool

 
image.png
  • 第三:将下载的apktool_2.3.0.jar文件改名为apktool.jar

然后可以把这两个文件放到一个文件夹下(方便管理)

 
image.png
  • 第四:将shell脚本”apktool”和”apktool.jar”放到 “/usr/local/bin”目录下

root 权限拷贝文件到usr/local/bin
$ cd /usr/local/bin
如果电脑不存在这个目录,那么创建一个:
$ sudo mkdir
打开终端,使用cd命令定位到apktool文件夹:我是放在 Documents文件下
$ cd Documents/apktool/
使用cp命令把apktool.jar和apktool文件拷贝到/usr/local/bin
$ sudo cp apktool.jar apktool /usr/local/binbin
  • 第五:给这两个文件添加权限

$ cd Documents/apktool/
$ chmod a+x apktool
$ chmod a+x apktool.jar
  • 第六:sudo apktool

  • 第七:现在就可以反编译相应的apk文件了

把apk文件放到apktool文件夹,然后回到apktool文件夹下:(需注意目录是否正确)我是把它们全都放在Documents/apktool/下
接下来执行命令
$ cd Documents/apktool/
$ apktool d xxx.apk
 
image.png
 
image.png

test下即为反编译生成的资源文件


dex2jar和JD-GUI的安装

第一:下载 dex2jar,并解压

第二:下载class反编译工具 jd-gui,并解压

第三:把这两个放到同一个文件夹下dex2jar

 
image.png

第四:为了检测下是否能破解,我们先用Apktool反编译,免得我们最后一场空。(只有Apktool能反编译/回编译,我们的破解才有意义)。

反编译见上边的命令:$ apktool d xxx.apk
回编译的命令:$ apktool b xxx
通常如果回编译失败,说明apk加固过,这时候的dex2jar生成的代码也是看不了的。如果两个命令都成功了,可以继续接下来的步骤

第五:将dex2jar-2.0里的d2j_invoke.sh和d2j-dex2jar.sh增加可执行权限

$ cd Documents/dex2jar/dex2jar-2.0
$ sudo chmod +x d2j_invoke.sh
$ sudo chmod +x d2j-jar2dex.sh

第六:现在就可以用dex2jar将apk转成jar文件,实质是将apk里的classes.dex转成jar。

$ sh d2j-dex2jar.sh /Users/xxx/Downloads/simple.apk

在simple.apk所在的目录,就会生成Simple-dex2jar.jar文件

第七:将Simple-dex2jar.jar该文件拖入jd-gui,就可以查看了

mac上Android反编译工具apktool、dex2jar入门的更多相关文章

  1. Android 反编译工具简介

    Android 反编译工具: 所需工具:1 apktool : 用于获取资源文件 2 dex2Jar : 用于将classes.dex转化成jar文件 2 jd-gui: 将jar文件转化成java文 ...

  2. Android反编译三件套 apktool 、dex2jar、jd-gui

    1.还是老话下载三件套(点击下载) 或者自己在百度搜索下载 2.使用apktool反编译apk cd到D:\TESTCODE\android\android反编译三件套目录下 输入java -jar ...

  3. 工欲善其事,必先利其器 软件工具开发关键词 protractor自动化测试工具 RegexBuddy正则 CodeSmith,LightSwitch:代码生成 CheatEngine:玩游戏修改内存值必备神器 ApkIDE:Android反编译工具 Reflector:反编译dll动态链接库

    工欲善其事,必先利其器 本文版权归翟士丹(Stan Zhai)和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利. 原文地址:http ...

  4. Android反编译工具介绍与简单实用方法

    Android反编译的目的无非就是为了看到APK的xml.资源和代码: 得到代码的方式:直接解压APK文件 --> 得到classes.dex文件 --> 使用 dex2jar class ...

  5. Android反编译工具的使用-Android Killer

    今天百度搜索“Android反编译”搜索出来的结果大多数都是比较传统的教程.刚接触反编译的时候,我也是从这些教程慢慢学起的.在后来的学习过程中,我接触到比较方便操作的Android反编译.在这,我将使 ...

  6. ApkDec android反编译工具

    转自:http://www.newasp.net/soft/70498.html 下载 ApkDec是一款免费的绿色APK反编译工具 forandroid ,由android开发者社区开发. ApkD ...

  7. apk反编译工具-apktool

    apk很easy被反编译,关于这篇文章apktool反编译工具. (一)优势反编译 1.能学习别人优秀代码 看看优秀apk他们的string.color命名规则,看看布局排版等都能学习到东西. 2.进 ...

  8. android反编译工具总结

    序:总结反编译主要的目的在于学习.利用反编译进行相关的汉化或修改,都是不道德的! 大家都知道,将apk文件解压后有两部分文件需要处理,一种是xml文件,另一种一个dex文件(.dex),我们可以从.d ...

  9. Android反编译工具的用法

    Android的APK文件时可以反编译的,通过反编译我们就能查看到大体的代码,帮助学习.反编译仅仅提供的是学习的方式,禁止使用该技术进行非法活动. 其实就是两个命令: 1:运行(WIN+R)-> ...

随机推荐

  1. spark2.2jdbc写入mysql 的两种方法(append,Overriedwrite)-不用Mysql建表

    import org.apache.spark.{SparkConf, SparkContext} import org.apache.spark.sql.{SQLContext, SaveMode} ...

  2. 自windows8以后,所有版本(专业版、企业版、旗舰版)都支持从 vhd 启动

    而在windows 7 中,只有:企业版.旗舰版: 支持 从 vhd 启动!

  3. MyBatis Generator使用com.mysql.cj.jdbc.Driver遇到的问题

    MyBatis Generator使用com.mysql.cj.jdbc.Driver Mybatis Generator 1.3.5 新建了一个decision库,并创建了一张user表 impor ...

  4. [PGM] What is Probabalistic Graphical Models

    学术潜规则: 概率图模型提出的意义在于将过去看似零散的topic/model以一种统一的方式串联了起来,它便于从整体上看待这些问题,而非具体解决了某个细节. 举个例子:梯度下降,并非解决神经网络收敛问 ...

  5. 5. RAMN备份与恢复

    一. rman简介 RMAN(Recovery Manager)是一种用于备份(backup).还原(restore)和恢复(recover)数据库的 Oracle 工具.RMAN只能用于ORACLE ...

  6. Unity3D UGUI Shader画一个圆环

    Shader "Unlit/NewUnlitShader" { Properties { _MainTex ("Texture", 2D) = "wh ...

  7. 使用Python3.7.0搭建简易服务器

    一.下载并安装Python 官网地址 二.新建start_server.bat 在需要搭建服务器的根目录位置,新建一个start_server.bat文件 内容 python -m http.serv ...

  8. onems设备管理系统(TR-069和OMA)

    onems设备管理系统(TR-069和OMA) 沃克斯科技OneMS设备管理套件是一个全面的为服务提供商和企业提供自动配置和远程管理功能的设备管理解决方案.它利用现有的网络基础设施来自动化订购,预配置 ...

  9. 网络推送通知:及时,相关和准确 (navigator.serviceWorker.register(), window.PushManager, new Notification)

    google网络推送通知 https://developers.google.cn/web/fundamentals/push-notifications/ 服务工作线程:简介server worle ...

  10. MyISAM和InnoDB区别 及选择

    MySQL默认采用的是MyISAM. MyISAM不支持事务,而InnoDB支持.InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事务,自动提交,这样会影响速度,所以 ...