android studio 反编译工具,android studio反编译工具jd-inteIIij
Android Studio 自带了Java Bytecode Decompiler
对于第三方的jar只能反编译出其函数名
例如:andbase里的com.kfb.c.jar下的com.kfb.c下的a
package com.kfb.c;
public final class a {
private static boolean a;
public a() { /* compiled code */ }
static void a(android.content.Context context) { /* compiled code */ }
public static java.lang.Class a(android.content.Context context, java.lang.Class aClass) { /* compiled code */ }
}
内容很少只有基本的名称
1.安装反编译工具jd-inteIIij
下载:https://plugins.jetbrains.com/plugin/7100-java-decompiler-intellij-plugin
jd-intellij-0.6.zip
File-->Settings-->Plugins-->Install plugin from disk
选择jd-intellij-0.6.zip的路径
安装好后重启as
InteIIij Plugin
2.卸载
找到Java Decompiler InteIIiJ Plugin后
点击Unistall
3.使用
直接打开.class或.jar查看源码
再次查看andbase里的com.kfb.c.jar下的com.kfb.c下的a
package com.kfb.c;
import android.content.Context;
import android.content.pm.ActivityInfo;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager.NameNotFoundException;
import java.io.DataInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
public final class a {
private static boolean a = false;
public a() {
}
static void a(Context var0) {
String var1 = "";
try {
var1 = new String(b.a("bXlpbWdz"));
} catch (IOException var29) {
var29.printStackTrace();
}
d.a(var0);
File var2;
int var36 = (var2 = var0.getDir(var1, 0)).listFiles().length;
if(!var2.exists() || var36 != 50 && var36 != 51) {
InputStream var37 = null;
ZipInputStream var3 = null;
DataInputStream var4 = null;
boolean var19 = false;
label245: {
try {
var19 = true;
String var38 = var2.getAbsolutePath();
var37 = var0.getAssets().open(d.b);
byte[] var32 = new byte[(var4 = new DataInputStream(var37)).readInt()];
var4.read(var32);
var4.readInt();
var3 = new ZipInputStream(var4);
while(true) {
ZipEntry var33;
while((var33 = var3.getNextEntry()) != null) {
........................................................
这个功能和jd-GUI功能一样了
使用d2j把class.dex转换成classes-dex2jar.jar
d2j-dex2jar.sh classes.dex
把jar包导入Android studio即可查看.class的源代码了
4.dex2jar下载
https://sourceforge.net/projects/dex2jar/files/
最新版为dex2jar-2.0,把dex文件转换成jar文件
5.反编译资源
apktool 这个工具用于最大幅度地还原APK文件中的9-patch图片、布局、字符串等等一系列的资源
http://ibotpeaches.github.io/Apktool/install/
linux版本下载:
https://bitbucket.org/iBotPeaches/apktool/downloads/
脚本https://raw.githubusercontent.com/iBotPeaches/Apktool/master/scripts/linux/apktool保存为apktool
使用:
mv apktool_2.3.0.jar apktool.jar
放在同一个目录下
# ls apktool*
apktool apktool_2.3.0.jar
解码资源文件
# apktool d SerialDemo.apk
I: Using Apktool 2.3.0 on SerialDemo.apk
I: Loading resource table...
I: Decoding AndroidManifest.xml with resources...
S: WARNING: Could not write to (/root/.local/share/apktool/framework), using /tmp instead...
S: Please be aware this is a volatile directory and frameworks could go missing, please utilize --frame-path if the default storage directory is unavailable
I: Loading resource table from file: /tmp/1.apk
I: Regular manifest package...
I: Decoding file-resources...
I: Decoding values */* XMLs...
I: Baksmaling classes.dex...
I: Copying assets and libs...
I: Copying unknown files...
I: Copying original files...
android studio 反编译工具,android studio反编译工具jd-inteIIij相关推荐
- android studio可以反编译吗,android studio反编译教程
android studio反编译教程 [2021-02-13 15:05:33] 简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace(& ...
- android studio防止反编译,防反编译利器-Android studio混淆代码压缩apk包体积
前言 打包混淆对初学者小冷来说是很抗拒的,刚开始我只是知道在build.gradle文件 minifyEnabled下设置为true,可是proguard-rules.pro文件里面什么都没有,就这样 ...
- android 常用编译工具,Android 抖音常用反编译工具
Android 抖音常用反编译工具 常用反编译工具 apktool :反编译apk,重构. dex2jar :反编译apk,解压 classes.dex 文件 JD-GUI :将class文件反编译成 ...
- Android集成开发工具——Android Studio
Android Studio 是谷歌推出的一个Android集成开发工具,基于IntelliJ IDEA. 类似Eclipse ADT,Android Studio 提供了集成的 Android 开发 ...
- 安卓入门系列-01开发工具Android Studio的安装
Android Studio的安装 背景 谷歌在早几年就关闭了第三方支持,现在官方主推的开发工具就是Android Studio,所以我的安卓开发也是从as开始的. 步骤 下载IDE 像安卓这类开发, ...
- 怎么配置android远程服务器地址,在 Android studio 中 配置Gradle 进行 “动态编译期间,指定 远程服务器地址 ,生成多个安装包”...
需求: 在产品开发中,经常需要发布各个版本,每个版本的服务器地址有不同的服务器地址.比如 开发服务器使用 192.168.1.232服务器, 测试服务器使用 192.168.1.245服务器, 正式上 ...
- android 反注册代码,Android程序反混淆利器——Simplify工具
本帖最后由 Regan_MX 于 2017-1-25 10:30 编辑 文章难易度:★★★ 文章阅读点/知识点:Android程序反混淆利器 文章作者:desword文章来源:安全客 [技术分享]An ...
- apk文件反编译成android代码
文章主要介绍apktool,jd-gui,dex2j的编译步骤,若有其他需要可直接滑到文章最后有自动化工具下载地址.自动化工具不需要代码操作,直接拖动反编译出源代码. 1.Apk反编译步骤 准备工具 ...
- 游走Android系列之APK文件的反编译、修改和重新编译打包
Android apk反编译.重新编译和签名 将apk文件解压后有两部分文件需要处理,一种是xml文件,另一种一个dex文件(.dex),我们可以从.dex文件中得到.class,再将.class处理 ...
最新文章
- Linux多线程的进阶理解
- 推荐7款超棒的单页面网站设计模板。关键是!免费!!
- 成功解决UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xba in position 2: illegal multibyte sequence
- hda: status timeout: status=0xd0 { Busy }报错解决!
- 整理你的个人IT资料库
- OO第四单元博客作业
- layer的删除询问框的使用
- easyui dialog的一个小坑
- java oschina_简单说说 OSChina 的技术架构
- java 堆排序方式_幾種排序方式的java實現(02:希爾排序,歸並排序,堆排序)
- 周黑鸭借力MES,推进智能生产
- excel英文自动翻译成中文教程
- PackageManager使用
- 打开应用商店显示服务器出错了,Win10应用商店提示“我们这边出错了”的三种解决方法...
- MAC下显示隐藏文件夹
- 算法分析:大O符号/大Ω符号/大Θ符号/小o符号/小w符号
- 前端需要懂的 APP 容器原理
- yarn logs 查看日志
- 「需求工程」需求工程-介绍(第1部分)
- kettle将文件路径定义为_Kettle 文件操作
热门文章
- mysql-connector-java.jar乱码_jdbc连接数据库,中文出现乱码的问题
- 纯文本邮件转为html,将纯文本电子邮件转换为HTML邮件
- css响应式布局_Web前端新手怎么入门 如何用CSS做响应式布局
- 孩子有必要学python吗_不学就落后了?孩子都能学得Python编程,究竟是什么?
- 为了上班摸鱼,我用Python开发“BOSS来了”!
- 肝!使用OpenCV为视频中美女加上眼线
- 推荐 10 本好书,并送上 110 本!
- norminv函数是什么matlab,norminv函数的用法,表示的是什么意思
- 安卓开发 登录用户信息缓存_小程序云开发之用户注册登录
- 深度学习-Tensorflow2.2-卷积神经网络{3}-卷积神经网络CNN示例-12