Android:反编译apk
一、所需工具
1. apktool
(1)作用:获取资源文件,例如图片、布局文件
(2)下载地址:https://bitbucket.org/iBotPeaches/apktool/downloads/

2. dex2jar
(1) 作用:获取源码文件,将apk反编译成java源码,获得jar文件
(2) 下载地址:https://sourceforge.net/projects/dex2jar/files/

3. jd-gui
(1) 作用:查看源码文件
(2) 下载地址:http://jd.benow.ca

所有工具下载完毕,放入同一个文件夹下

二、反编译步骤
1. 使用apktool获取资源文件
(1) 所用命令
java中执行jar的命令: java -jar jar包名.jar
使用如下命令来执行apktool_2.3.3.jar文件来反编译apk,从而获得资源文件
java -jar apktool_2.0.1.jar d -f apk的存储路径 -o 反编译的得到的资源文件夹名

2. 使用dex2jar获取源码
(1) 将需要反编译的apk的后缀改成rar或zip,然后解压

(2) 将classes.dex文件复制到dex2jar文件夹下

(3)执行命令 sh d2j-dex2jar.sh classes.dex

得到反编译后的源码的jar文件

3. 使用jd-gui打开反编译后的jar查看源码

Android:反编译apk的更多相关文章
- Android 反编译apk 详解
测试环境: win 7 使用工具: CSDN上下载地址: apktool (资源文件获取) 下载 dex2jar(源码文件获取) 下载 jd-gui (源码查看) ...
- Android 反编译Apk提取XML文件
Apktool https://ibotpeaches.github.io/Apktool/install/ 下载地址:Apktool https://bitbucket.org/iBotPeache ...
- [Android]反编译apk + eclipse中调试smali
从来没有想过反编译apk是来的如此方便,并且还可以修改后重新编译运行,这比在win下修改pe容易多了,感谢apktool和smali工具的作者提供这么好的工具. 跟踪apk一般的做法是在反编译的sma ...
- Android 反编译apk
工具介绍: apktool 作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看 下载地址:https://bitbucket.org/iBotPeaches/apktool/downl ...
- Android反编译apk并重新打包签名(Mac环境)
工具下载 apktool :https://ibotpeaches.github.io/Apktool/install dex2jar:https://github.com/pxb1988/dex2j ...
- Android反编译APK
http://blog.csdn.net/vipzjyno1/article/details/21039349/ 关于被加壳工具添加我的apk如何脱壳 http://www.blogfshare.co ...
- Atitit.反编译apk android源码以及防止反编译apk
Atitit.反编译apk android源码以及防止反编译apk 1.1. Tool apk逆向助手1 1.2. 二.使用dex2jar + jd-gui 得到apk的java源码1 1.3. 用 ...
- Xamarin android如何反编译apk文件
Xamarin android 如何反编译 apk文件 这里推荐一款XamarinAndroid开发的小游戏,撸棍英雄,游戏很简单,的确的是有点大.等一下我们来翻翻译这个Xamarin Android ...
- Android反编译(未混淆的apk)
Android反编译(未混淆的apk) 工具 dex2jar 下载地址:我的CSDN 或者 官网 jd-gui 下载地址:我的CSDN 或者 官网 反编译步骤 1. 将APK解压缩,获取classes ...
- Android基础新手教程——1.10 反编译APK获代替码&资源
Android基础新手教程--1.10 反编译APK获代替码&资源 标签(空格分隔): Android基础新手教程 本节引言: "反编译Apk".看上去好像好像非常高端的样 ...
随机推荐
- 根据自增ID生成不重复序列号
网上看到一个例子,源地址:https://www.aliyun.com/jiaocheng/536419.html 借鉴修改一下 实现根据long类型的用户ID生成6位随机邀请码,并且根据邀请码能算出 ...
- ethereumjs/ethereumjs-blockchain-1-简介和API
https://github.com/ethereumjs/ethereumjs-blockchain SYNOPSIS概要 A module to store and interact with b ...
- mavenWeb工程建立步骤
1.File >> New >>other...,在New窗口中打开Maven,选中Maven Project,Next. 2.在New Maven Project弹出窗口中去 ...
- l2-loss,l2正则化,l2范数,欧式距离
欧式距离: l2范数: l2正则化: l2-loss(也叫平方损失函数): http://openaccess.thecvf.com/content_cvpr_2017/papers/Li_Mimic ...
- Go 测试单个方法
1.目录 gotest.go package mytest import ( "errors" ) func Division(a, b float64) (float64, er ...
- 测试Protobuffer的定义格式对其时间和空间的影响
测试Protobuffer格式的A命令转换为std::string的的字节个数,分别测试了工程中用到的几种命令: a)AddLayer:108 b)AddSource:209 c)MoveLayer: ...
- Linux命令总结(转)
1.ls [选项] [目录名 | 列出相关目录下的所有目录和文件 -a 列出包括.a开头的隐藏文件的所有文件 -A 通-a,但不列出"."和".." -l 列出 ...
- MySQL索引优化经验总结
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引 ...
- 【CSU 1803】2016 (数学)
Description 给出正整数 n 和 m,统计满足以下条件的正整数对 (a,b) 的数量: 1. 1≤a≤n,1≤b≤m; 2. a×b 是 2016 的倍数. Input 输入包含不超过 30 ...
- MYSQL 5.7.25最后一个5.x版本记录
一:下载 位 https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.25-win32.zip 位 https://dev.mysql.co ...