工具用的顺手吗?
你的反馈能帮助我们做得更好
从 APK、DEX、AAB、AAR 与常见分包中提取可读代码和应用资源。
点击选择文件拖放文件到此处,或点击选择
.apk · .xapk · .aab · .aar · .apks · .apkm · .dex
最大 10 MB
上传上限:游客 10 MB,普通会员 20 MB,高级会员 50 MB,专业会员 50 MB。
概览
了解工具能解决的问题、计算或处理逻辑,以及数据边界。
Android 安装包包含面向运行时的字节码、资源和清单等内容。APK 常用于安装;AAB 是后续生成设备适配 APK 的发布格式;AAR 通常是供 Android 工程引用的库包;DEX 保存 Dalvik/ART 可执行代码。分包格式可能把基础包和设备配置资源拆开保存。上传后,处理结果会把可读的 Java 风格代码及能够识别的包内文件整理到 ZIP。
反编译代码是从字节码重建的近似表达。Kotlin 编译产物可能显示为 Java 风格结构,协程、内联函数和编译器生成代码与原始 Kotlin 写法不同。R8 或 ProGuard 混淆会缩短类名和方法名;资源名、注释和原工程模块划分也可能已经丢失。
应用包还可能包含二进制清单、图片、布局、文本、配置和本地库。ZIP 中的目录结构有助于识别这些内容,但并不代表完整 Android Studio 项目。APK 若含 Unity Mono 程序集,结果会尝试单独导出部分 C#;若使用 IL2CPP,原生机器码不能据此还原为 C# 源码。
指南
按步骤完成操作,并通过示例核对输入与结果。
准备一个不超过 5 MB、且你有权检查的 .apk、.dex、.aab、.aar、.xapk、.apkm 或 .apks 文件。
上传后开始处理。若文件来自应用商店的分包下载,尽量使用包含基础包和必要配置的完整归档;只有单个 split 时,缺少类或资源可能是预期现象。
处理结束后,先在结果列表中检查清单、包内目录和若干代码文件,再下载 ZIP。搜索类名或字符串时,注意混淆后的名称可能已无法对应原始命名。
需要理解一个行为时,将入口组件、调用链、资源引用和权限声明放在一起核对;不要仅凭某个类名推断应用行为。
大型依赖或高复杂度样本可能超时或产生大量输出。遇到失败时,先确认输入没有损坏,再尝试较小的单个 DEX、APK 或更完整的分包集合。
场景
查看这项工具在不同工作与生活流程中的用法。
检查 manifest、权限声明、资源路径和最终打包内容,确认发布物与预期构建结果一致。
从 DEX、清单与资源中寻找组件注册、版本行为或配置差异的线索,再回到工程和设备日志验证。
对获准测试的应用包进行静态审阅,记录可复现证据,并将结果与运行时观察相互印证。
资源提取和代码阅读不等同完整安全扫描,也不能证明应用没有隐藏行为。
问答
集中解答高频疑问与容易混淆的问题。
不能。此处用于读取归档中的字节码和资源,不会执行设备定向拆分、签名或生成新的安装包。
不会保证。字节码通常重建为 Java 风格源码,协程、内联和编译器生成结构可能与原 Kotlin 工程差异很大。
上传的 split 可能只包含某种设备配置。基础包、其他配置包或动态交付资源未包含时,导出内容自然不完整。
须知
使用前了解适用范围、结果限制与必要提醒。
仅分析自有应用或已获授权的应用包。下载或反编译他人软件不会改变其版权、许可或服务条款,也不构成复制、修改、重新发布或绕过访问限制的许可。
APK 可能携带账号标识、应用服务地址、证书、公钥、测试数据或尚未公开的业务逻辑。此工具会把所选文件发送到服务器处理;不要上传包含个人资料、真实用户数据、密钥或公司机密的包。临时工作目录在任务结束后清理,下载结果仍需自行妥善保管。
优化、混淆、压缩、加固、损坏归档和缺失 split 都会造成结果缺失或命名失真。静态读取不能确认某段代码在运行时一定会执行,也不能替代设备隔离、动态测试和原始工程核对。APK 内的 Unity C# 导出仅适用于部分 Mono 程序集;IL2CPP 输出是原生代码,无法直接转换回原始 C# 工程。
推荐
查找相关工具、专题与可用的 API 能力。