WBBlades 是一个基于 Mach-O
文件解析的工具集。该工具集为开发者提供了多种实用功能,包括应用程序一键体检(支持 OC
和 Swift
的无用类检测)、包大小分析(支持单个静态库和动态库)、点对点崩溃解析(基于系统日志,支持华为和 Bugly 平台的崩溃堆栈解析,支持有符号和无符号状态),以及基于 Mach-O 文件的类自动提取与 Hook 能力。项目采用了多种技术手段,如汇编代码分析、架构提取、符号表剥离等,并支持对 iOS 15 以上 dyld_chained_fixups 的处理。此外,为了便于用户更快了解该项目,我们还提供了基于 GPT 的智能 Readme 功能。
工具名称 | 功能概述 | 相关技术 |
---|---|---|
智能 Readme | 问答互动形式帮助用户快速了解 WBBlades 项目和相关技术 | GPT 聊天 |
App 一键体检 | 检测 Swift 和 OC 的无用类、无用资源,并提供包优化建议 | 反汇编、文本指令提取、Mach-O 解析等 |
包大小分析 | 检测静态库和动态库在 .ipa 文件中占用的实际大小 | 架构剥离、静态库结构分析 |
崩溃解析 | 利用 .app 或 dYSM 文件解析系统崩溃日志,支持华为和 Bugly 平台 | dYSM 文件解析、符号表提取、ips 文件解析等 |
Mach-O 类 Hook | 从 Mach-O 文件中自动提取类并进行 Hook | 使用 dyld_chained_fixups、binding、rebase 等解析方式 |
最新版本在命令行工具的基础上进行了全面的可视化实现,旨在提升研发效率。同时,对于一些难以复现和常规工具无法收集的崩溃(例如操作系统直接杀死应用进程),提供了基于系统日志的点对点崩溃解析功能。