android java反编译
一:dex反编译
工具依赖:dex2jar-2.0
获取工具:提供两个链接,一个是github的,需要翻墙,有更新,另一个不用翻墙的,但从16年后就没有更新了
Releases · pxb1988/dex2jar · GitHubhttps://github.com/pxb1988/dex2jar/releases
dex2jar download | SourceForge.nethttps://sourceforge.net/projects/dex2jar/
命令简析:
dex2jar提供了一组批处理和sh脚本来支持windows和Linux上执行
下面是git hub上 Bob Pan 在 3 Nov 2014 写的操作流程,与现在的实际条件已经有所不同,但这几步流程是一样的,有所不同的是jdk现在可以使用jdk8,后续应该还可以使用jdk17。
Install JDK7
// For Ubuntu sudo apt-get install openjdk-7-jre
Download dex2jar from dex2jar - Browse Files at SourceForge.net
Extract dex2jar-version.zip to a folder. for example /home/panxiaobo/, _C:_
// For Linuxunzip -x dex2jar-version.zip -d /home/panxiaobo
use dex2jar to generate .jar file. dex2jar will generate a file named someApk-dex2jar.jar in the working folder.
// For Linux, Mac OSX, Cygwinsh /home/panxiaobo/dex2jar-version/d2j-dex2jar.sh /home/panxiaobo/someApk.apk// For WindowsC:\dex2jar-version\d2j-dex2jar.bat someApk.apk
use a decompiler to view the source.
- jd-gui
- JAD
- Procyon
that's it
下面的链接是反编译出jar包之后的查看工具,jd-gui并不是唯一的工具,使用AS也是可以通过加载jar包的方式但看到反编译出来的代码。jd使用很简单,和普通的文件工具差不多,就不专门介绍了。
https://github.com/java-decompiler/jd-gui/releases/https://github.com/java-decompiler/jd-gui/releases/
二:odex反编译
工具依赖:baksmali-2.5.2.jar ,smali-2.5.2.jar
获取工具:以下站点提供了原始的jar包下载,读者可以按需下载对应版本。如果有兴趣,读者也可以在这个git仓库上阅读源码。JesusFreke / smali / Downloads — Bitbuckethttps://bitbucket.org/JesusFreke/smali/downloads/
示例:反编译serivces.odex文件,
第一步把odex解码为smali文件,这一步会把对应odex文件编译出当前目录的out路径下
java -jar baksmali-2.5.2.jar x services.odex
第二步把smali文件编译为dex包
java -jar smali-2.5.2.jar ass -o classes.dex out
第三步,使用dex反编译方法,反编译出源代码。
注意,odex反编译时,应尽可能保证当前odex有依赖的包都在当前路径下
命令简析:
针对特定的版本,命令可能存在差异,可以使用 -h或--help列出当前版本的命令列表
如我使用的2.5.2的版本,如果是用于反编译 odex或oat文件,使用deodex,de,x三个命令都可以
参考命令如下:java -jar baksmali-2.5.2.jar x services.odex
E:\tools\bux2.0\push\bak\framework\oat\arm64>java -jar baksmali-2.5.2.jar h
usage: baksmali [--version] [--help] [<command [<args>]]
Options:
--help,-h,-? - Show usage information
--version,-v - Print the version of baksmali and then exit
Commands:
deodex(de,x) - Deodexes an odex/oat file
disassemble(dis,d) - Disassembles a dex file.
dump(du) - Prints an annotated hex dump for the given dex file
help(h) - Shows usage information
list(l) - Lists various objects in a dex file.
See baksmali help <command> for more information about a specific command
E:\tools\bux2.0\push\bak\framework\oat\arm64>
smali的命令列表如下
E:\tools\bux2.0\push\bak\framework\oat\arm64>java -jar smali-2.5.2.jar h
usage: smali [-v] [-h] [<command [<args>]]
Options:
-h,-?,--help - Show usage information
-v,--version - Print the version of baksmali and then exit
Commands:
assemble(ass,as,a) - Assembles smali files into a dex file.
help(h) - Shows usage information
See smali help <command> for more information about a specific command
android java反编译相关推荐
- ubuntu java反编译,[原创]Ubuntu下简单配置反编译工具以及其开发环境
0x0:前言 个人电脑重新换了下系统,Ubuntu14.04,刚好需要配置下android的反编译环境,这里简单记录一下,以供有需要的朋友参考. 其实最简单的,只需要apktool就可以了,不过有编码 ...
- 【转】Android APK反编译就这么简单 详解(附图)
转自:http://blog.csdn.net/vipzjyno1/article/details/21039349/ [置顶] Android APK反编译就这么简单 详解(附图) 分类: and ...
- java反编译工具_ReverseTool逆向工具集合
反向工具 逆向工具集合 真棒骇客 Java和Jar(Android) jd-gui jar包浏览工具,对应的IDE插件,JD-Eclipse / JD-IntelliJ Luyten一个用于Procy ...
- java反编译工具_JDA Java反编译工具的下载和使用手册
JDA(javadecompile analysis)是一款以dex为核心的java反编译工具,同时支持apk.dex.jar文件的反编译,支持动态重命名.该软件主要是用来反编译分析代码而不是反编译出 ...
- android apk反编译(获取源码,资源文件等)
android apk反编译,是让你可以去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局是怎么实现的 一.当然我们也需要借助工具: apktool (资源文件获取,可以提取出图片文件和布局文件 ...
- 记录Android Killer反编译时遇到的异常
使用Android Killer反编译,出现以下异常: 一.resource spec: 0x01010543 当前 Apktool 使用版本:Android Killer Default APKTO ...
- Java 反编译工具的使用与对比分析
前言 Java 反编译,一听可能觉得高深莫测,其实反编译并不是什么特别高级的操作,Java 对于 Class 字节码文件的生成有着严格的要求,如果你非常熟悉 Java 虚拟机规范,了解 Class 字 ...
- Android APK 反编译的基本工具和步骤
一站解决反编译 JADX是一个可以直接反编译apk的程序,无需下面繁琐的步骤.推荐使用! 准备材料 dex2jar Android .dex 文件和Java的.class文件的转换 ApkTool 反 ...
- android apk 反编译 工具下载,android APK反编译工具Apktool
这是android APK反编译工具Apktool下载,集成 jd-gui.jad.dex2jar.apktool.使用该工具可以反编译apk文件,查看xml以及java源代码,默认使用jad反编译, ...
- Android 的反编译 (附愤怒的小鸟源码下载)
读源码是最好的学习方法,下面我们以愤怒的小鸟为例,看看如何把一个android游戏反编译成可读的源码. 工具介绍: 1.apktool 这个工具用来解压xml文件 到http://code.goo ...
最新文章
- Spring源码分析【1】-Tomcat的初始化
- 关于java中的字符流的一个使用例子
- oracle将多行转成多列,oracle 多行转多列查询
- 磁盘占用百分百?Windows 10必做各项优化
- c语言运动会分数统计系统_初学C语言Bug大赏
- linux第三方模块参数,Swift on Linux – 导入第三方模块
- mysql create routine 权限的一些说明
- Sql Plus 操作
- Window 远程连接 Ubuntu 系统
- 基于matlab的信号与系统实验,基于MATLAB的《信号与系统》实验系统
- centos7设置DNS
- 管理变量、机密和事实
- manjaro 中文输入法
- 微信上线支付分对标芝麻信用分,教你如何开通!
- 使用Trinamic TMC2300步进驱动器做一个迪斯科灯项目
- Linux文件类型发布啦!
- java.sql.SQLException: The server time zone value‘xxxxxxxx‘ is unrecognized
- 如何通过三视图判断立方体个数_中考难点,由三视图确定小立方体个数的问题求解有策略...
- 应用层协议 HTTP HTTPS
- 【共享经济】披着共享经济外衣的租赁经济
热门文章
- 不要在作死的边缘试探(最后那个英雄手势挺好玩儿的)
- PLSql不用安装Oracle客户端,实现远程连接
- mybatis关联查询resultmap的使用详解resultmap
- uva 12230 - Crossing Rivers(概率)
- Visual Studio启动、附加进程调试,多个Web Application时启动多个WebServer关闭方法
- python实现多进程监听声音播放并绘图
- [转载] 在 CentOS 7 中安装 MySQL 8
- iptables 防护基本 DDoS 配置
- 程序员!你还能年轻几岁?
- WINDOWS剪切板内容 复制到vi编辑器使用