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. react跳转url,跳转外链,新页面打开页面

    react中实现在js中内部跳转路由,有两种方法. 方法一: import PropTypes from 'prop-types'; export default class Header exten ...

  2. ABBYY PDF Transformer+系统要求

    ABBYY PDF Transformer+是一个新的,全面的巧妙解决PDF文档的工具,它将泰比的光学字符识别(OCR)技术和Adobe®PDF技术完美结合,以确保实现便捷地处理任何类型的PDF文件, ...

  3. 设计模式-结构型模式, mvc 模型视图控制器模式(8)

    MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式.这种模式用于应用程序的分层开发. Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO.它 ...

  4. 面向切面编程AOP,一些通用装饰器

    1.一些装饰器,可以减少重复编写.比较常用的. 用的时候函数上面加上装饰器就可以.这是一些装饰器,加在函数或者方法上,减少了很多重复代码. 除此之外工作中也用一些mixin类大幅减少代码. impor ...

  5. webpack 运行提示“The ‘mode‘ option has not been set”的原因和解决方法

    最近在研究webpack,当我执行npm run build / npm start / npm run server等命令时,都是提示下面的警告信息 WARNING in configuration ...

  6. 浅谈JAVA中HashMap、ArrayList、StringBuilder等的扩容机制

    JAVA中的部分需要扩容的内容总结如下:第一部分: HashMap<String, String> hmap=new HashMap<>(); HashSet<Strin ...

  7. Jenkins设置备份

    安装备份插件,系统管理-插件管理 可选插件搜索backup 备份 系统管理-Backup manager 设置备份路径 恢复

  8. WordOperate

    using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using S ...

  9. .net core中使用Type.GetType()从字符串获取类型遇到的问题

    问题背景是想在 appsettings.json 中动态配置依赖注入,依赖注入代码如下: services.AddSingleton(typeof(ISmsService), Type.GetType ...

  10. SET ARITHABORT {ON | OFF}讲解

    SET ARITHABORT {ON | OFF} 在查询处理过程中如果出现溢出错误或把零作为除数则查询处理是否该终止如 果为ON 则表示终止查询如果为OFF 则表示返回一个警告信息对于进行算术运 算 ...