
在ROM修改或APK反编译过程中,我们经常需要参考某些代码或查看应用文件结构。这时就需要反编译APK进行查阅。为了更方便操作,我手搓了一个图形化小工具,可以快速查看APK中的DEX代码和其他文件内容。
应用apk的基础常识
APK (Android Package) 文件本质上是一个遵循 ZIP 格式的压缩包,包含了应用运行所需的一切。了解其构成、各文件作用及反编译原理,有助于您进行安全审计、竞品分析或问题排查
APK 文件构成
一个典型的 APK 解压后,主要包含以下目录和文件:

├── AndroidManifest.xml # 应用清单 (二进制格式)
├── classes.dex # 核心代码 (DEX 字节码)
├── resources.arsc # 编译后的资源索引表
├── META-INF/ # 签名和校验信息
│ ├── MANIFEST.MF
│ ├── CERT.SF
│ └── CERT.RSA
├── res/ # 资源目录 (布局、图片、字符串等)
│ ├── layout/
│ ├── drawable-xxx/
│ └── values/
├── assets/ # 原始资源目录 (不被资源系统管理)
├── lib/ # 原生库 (.so 文件, 按 CPU 架构分类)
│ ├── armeabi-v7a/
│ ├── arm64-v8a/
│ └── x86/
└── ... (其他可选文件) # 如 kotlin/、META-INF/services/ 等
核心文件与目录详解
1.AndroidManifest.xml
应用的"身份证"和"说明书",系统通过它来识别应用。包含包名、版本号、权限、四大组件
assets/目录
存放需要原样保留的文件,如配置文件、HTML、字体等。应用通过 AssetManager按文件名直接访问,不经过资源 ID 系统
lib/目录
存放 C/C++ 编写的原生动态库 (.so文件),按 CPU 架构分类存放,如 armeabi-v7a, arm64-v8a, x86等,以实现最佳性能
META-INF/目录
存放 APK 的签名和校验信息,确保应用未被篡改。
MANIFEST.MF: 记录 APK 中每个文件的 SHA-1 摘要。
CERT.SF: 对 MANIFEST.MF文件本身及其中每条摘要再次进行 SHA-1 摘要。
CERT.RSA: 开发者签名证书,包含公钥和开发者身份信息
手搓工具操作演示
工具特点:
1----可以简单操作即可分解应用apk。查看文件结构
2----可以直接查看AndroidManifest.xml代码【需要使用默认电脑程序打开】
3-----查看源apk中dex代码反编译后的全文件以及 smali代码
4----重新编译打包为apk【个别应用除外】
5----对apk进行签名操作 【简易版】


解包apk后的文件




注意事项:
最近对python较感兴趣。手搓小工具。功能一般。用于查看一些应用代码 结构来说绰绰有余。不支持一些特殊apk应用。需要配置安装好java环境。操作前记得备份源文件。以免出错,
下载:https://download.csdn.net/download/u011283906/92640601
🍀🌼🌻🌺🌹🌸🌷💐