apk反编译-源码阅读

article/2025/11/7 6:42:47

文章目录

    • 一、准备工具
      • (1) 使用工具介绍:
      • (2) 使用工具下载与安装:
    • 二、Apk 反编译步骤
    • 三、出错提示:

一、准备工具

提示:这些工具在官网都不好下载,偶也是废了好大力气呢,建议直接下载我提供的网盘链接

(1) 使用工具介绍:

1. apktool 最新版 jar 包
作用:资源文件获取,可以提取出图片文件和布局文件进行使用查看
2. dex2 jar 的zip包
作用:将apk反编译成java源码(classes.dex转化成jar文件)
3. jd-gui 工具
作用:查看APK中classes.dex转化成出的jar文件,即源码文件

(2) 使用工具下载与安装:

1.apktool_2.3.4 jar 包(2018.10.31 目前最新版)
百度网盘地址:https://pan.baidu.com/s/1svF53LnKTZLwPABUA8_aOA 密码:top9

2.dex2 2.0 jar 包(2018.10.31 目前最新版)
百度网盘地址:https://pan.baidu.com/s/1dAqUojefElj31WTWuLQCIw 密码:6igx

3.jd-gui 1.4.0(2018.10.31 目前最新版)
百度网盘地址:https://pan.baidu.com/s/1FNH5FtGECcz4uq5NUYOxkw 密码:dm1j

二、Apk 反编译步骤

(1) 使用 apktool 反编译 apk 得到图片、XML配置、语言资源等文件

1.将上述下载好的 3 个工具统一放到一个文件夹中(目录最好不好有中文),并解压 zip 文件,例如:
在这里插入图片描述

2.打开 cmd/终端,进入上述工具目录
在这里插入图片描述
在这里插入图片描述

3.运行apktool_2.3.4.jar这个jar文件来将 apk文件进行反编译,在java中,运行可执行jar包的命令是:

java -jar apktool_2.3.4.jar d -f apk文件绝对路径 -o 输出的目录

例如: 使用如下的命令运行apktool_2.0.1.jar反编译com.leiting.app.apk

java -jar apktool_2.3.4.jar d -f D:\apkDecompile\ocrTest.apk -o source

这个命令是启动 apktool_2.3.4.jar 将同级目录下的com.leiting.app.apk文件执行反编译,然后将反编译生成的文件存放到 apk 文件同级的 source 目录下,截图:

在这里插入图片描述

4.然后就会生成源文件的目录,有开发经验的大概能看出点什么
在这里插入图片描述

5.重要的有【res】目录和【AndroidManifest.xml】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

以上就是使用 apktool 这个工具将一个 apk 反编译得到图片、XML配置、语言资源等文件的过程

(2) 使用 dex2jar 反编译 apk 得到 Jar 包

将要反编译的 APK 后缀名改为 .rar 或者 .zip,并解压,得到其中的classes.dex 文件(它就是java文件编译再通过dx工具打包而成的),如下图所示:

在这里插入图片描述

将获取到的classes.dex放到之前解压出来的工具【dex2jar-2.0】文件夹内,如下图所示:
在这里插入图片描述

在命令行下进入到 dex2jar.bat 所在目录,输入"d2j-dex2jar classes.dex",截图:

在这里插入图片描述

命令执行完成之后,在当前目录下就可以看到生成的Jar文件了,如下图所示:
在这里插入图片描述

反编译 classes.dex 得到 classes-dex2jar.jar 文件之后,就可以使用【jd-gui】工具将 class 文件反编译成 java 源代码了

(3) 使用 jd-gui.exe 工具将 class 文件反编译成 java 源代码

1.打开 jd-gui.exe 程序(不需要安装,之前 zip 包解压即可)

在这里插入图片描述

在这里插入图片描述

2.将jar包拖到 jd-gui.exe里面,就可以看到 java 源代码:
在这里插入图片描述

三、出错提示:

如果那不出错了,基本就是工具版本的问题,建议全部下载最新版或者全部使用我提供的版本


http://chatgpt.dhexx.cn/article/QYMs24M0.shtml

相关文章

APK反编译以及提取有用信息

目录 一、反编译工具的介绍 apktool dex2jar jd-gui 二、apk反编译 三、提取有用信息 信息收集的内容 apk开发者id和apk签名证书查找 三、一键式反编译进行信息收集工具介绍 现学现卖,有些地方有错误还请包含,也十分欢迎指教补充。 一、反编译工具…

如何对apk文件进行反编译

1.下载反编译三件套(2022.9.5更新) 点我直达 提取码:cbjw 2.压缩包解压 这里以解压到D:\decompile为例 3. 使用apktool反编译apk(此处以wat.apk处于D:\decompile文件夹为例) //进入dos窗口:winR->输入cmd->回车cd D: 回车cd decompi…

APK反编译

本文首发于:行者AI 当我们想要了解一款APP时,最好的学习方式就是将其APK文件进行反编译。将APK进行反编译之后,我们就可以看到开发这个应用使用的资源文件(图片)、layout、样式、相关的实现代码等,学习这些…

apk反编译教程(2022win11亲测)

捣鼓apk反编译,想做一些羞羞的事情,网上的教程大多都比较旧,这里更新一篇比较新且详细的反编译教程。 目录 软件准备 apktool安装和使用 dex2jar安装和使用 jd-gui使用 软件准备 首先我们想要比较完整的解析一个apk需要三个工具&#…

Android apk反编译

学习和开发Android应用有一段时间了,今天写一篇博客总结一下Android的apk文件反编译。我们知道,Android应用开发完成之后,我们最终都会将应用打包成一个apk文件,然后让用户通过手机或者平板电脑下载下来进行安装。正常情况下&…

AVD创建与使用

一、创建虚拟设备(AVD) AVD链接地址>>手机安卓自动化环境配置 操作程序: D:\tool\adt4_2_32bit\eclipse-eclipse.exe(双击启动)–开发工具 创建AVD(虚拟设备): 1)点击Window…

关于AVOD, 你需要知道的事

翻译、编辑:Alex 本文来自OTTVerse,作者为Krishna Rao Vijayanagar。 ▲扫描图中__二维码了解音视频技术大会更多信息▲ Easy-Tech #026# AVOD(Advertising-based Video On Demand)是一种视频点播商业模式:通过在视频…

AVOD:Aggregate View Object Detection跑通(官方README小补充)

本地环境 Ubuntu20.04 anaconda tensorflow-gpu1.3.0 cudatookit8.0 cudnn6.0 protobuf3.14.0(protobuf用3.2.0会报错) 1. protobuf文件解释 protobuf是google的一个开源的用来做数据通信的库,在avod/protos文件中有很多.proto文件,这些文件定义了…

AVA

声明:作者翻译论文仅为学习,如有侵权请联系作者删除博文,谢谢! 论文链接:arXiv:1705.08421 [cs.CV] 《AVA: A Video Dataset of Spatio-temporally Localized Atomic Visual Actions》论文翻译 摘要介绍相关工作数据收…

avod论文理解与代码解读

AVOD 论文理解与代码解读 论文简析概述网络结构BEV map特征提取rpn 网络特征融合 第二阶段检测网络box 编码方向确定 代码解读anchor 的产生mini batch的产生与作用rpn modelavod modelloss不足 论文简析 参考文章: csdn 代码: 代码 文献: …

AVOD、SVOD、TVOD、PVOD:视频点播商业模式

翻译、编辑:Alex 本文来自OTTVerse,作者为Krishna Rao Vijayanagar。 ▲扫描图中二维码了解音视频技术大会更多信息▲ Easy-Tech #025# 什么是视频点播(VOD)? 当我向流媒体业内人士问到,视频点播&#x…

【综述】MV3D-Net、AVOD-Net 用于自动驾驶的多视图3D目标检测网络

点击上方“3D视觉工坊”,选择“星标” 干货第一时间送达 前言 MV3D-Net 融合了视觉图像和激光雷达点云信息;输入数据有三种,分别是点云俯视图、点云前视图和RGB图像。通过特征提取、特征整合和特征融合,最终得到类别标签、3D边界框…

AVOD、SVOD、TVOD、PVOD:揭秘视频点播商业模式

点击上方“LiveVideoStack”关注我们 翻译、编辑:Alex 本文来自OTTVerse,作者为Krishna Rao Vijayanagar。 ▲扫描图中二维码或点击阅读原文▲ 了解音视频技术大会更多信息 商业模式 Easy-Tech #025# 什么是视频点播(VOD)&#xf…

AVOD:点云数据与BEV图的处理及可视化

文章目录 前言1. 点云数据可视化2. 点云数据校准3. 转为BEV图4. 补充:点云坐标系与相机坐标系结束语 前言 本篇主要记录对AVOD代码的学习与理解,主要是KITTI数据集中3D Object Detection任务中的点云数据和BEV图的处理,为方面理解其中的操作&…

视觉与激光雷达融合3D检测(一)AVOD

1.概述 AVOD(Aggregate View Object Detection)和MV3D类似,是一种融合3维点云和相机RGB图像的三维目标检测算法. 不同的是: MV3D中融合了相机RGB图像,点云BEV映射和FrontView映射,而AVOD则只融合相机RGB图像和点云BEV映射. 从网络结果来看,AVOD采用了基…

AVOD论文解读

AVOD论文解读 1.概述2.网络框架2.1 激光点云数据预处理2.2 特征提取2.3 降低数据量2.4 3D后选区域生成2.5 3D检测框编码2.6 朝向估计 论文地址:[1712.02294] Joint 3D Proposal Generation and Object Detection from View Aggregation (arxiv.org) 代码地址&#…

AVD的使用

前言:这个是AndroidStudio自带的模拟器,虽然功能强大,但是感觉不太好用,安装和使用都比较卡。 个人推荐使用夜神模拟器。 1.打开AndroidStudio,并新建一个工程 2.在菜单栏选择Tools-Android-AVDManager--Create Virt…

复现AVOD

复现过程主要参考https://zhuanlan.zhihu.com/p/87136172 这位博主 之前跟着官方github(https://github.com/kujason/avod) 环境一直配置不好,之后直接使用博主提供的yaml配置文件,之后进行略微调整即可 与博主不同的是&#xf…

AVOD-理解系列(一)

AVOD-理解 本篇用于记载之前阅读的论文avod及其代码,纯属个人个人理解.有误之处欢迎指正! 网络结构 代码流程 1:Feed_dict: feed_dict: 主要就是确定每一个mini_batch里输入图像的各种信息,包括图像的名字,图像的标签文件,图像…

AVOD代码复现

参考文献: https://zhuanlan.zhihu.com/p/86340957 https://zhuanlan.zhihu.com/p/354842740 https://www.guyuehome.com/39798 https://zhuanlan.zhihu.com/p/40271319 1,配置环境 conda create -n avod python3.5 conda install tensorflow-gpu1.3.0…