终端指令
class-dump -H Mach-O文件路径 -o 头文件存放目录
-H表示要生成头文件
-o用于制定头文件的存放目录
顾名思义,它的作用就是把Mach-O文件的class信息给dump出来(把类信息给导出来),生成对应的.h头文件
官方地址:http://stevenygard.com/projects/class-dump/
下载完工具包后将class-dump文件复制到Mac的/usr/local/bin目录,这样在终端就能识别class-dump命令了
进入mac终端,注意要退出与服务器的连接
假如仍然连接着服务器,先退出服务器
logout
进入bin目录
cd /usr/local/bin
打开bin目录
open ./
将解压后的class-dump
文件拖拽到bin目录下
测试class-dump是否能用
在终端输入指令
class-dump
输出一堆指令
Usage: class-dump [options] <mach-o-file>
where options are:
-a show instance variable offsets
-A show implementation addresses
--arch <arch> choose a specific architecture from a universal binary (ppc, ppc64, i386, x86_64, armv6, armv7, armv7s, arm64)
-C <regex> only display classes matching regular expression
-f <str> find string in method name
-H generate header files in current directory, or directory specified with -o
-I sort classes, categories, and protocols by inheritance (overrides -s)
-o <dir> output directory used for -H
-r recursively expand frameworks and fixed VM shared libraries
-s sort classes and categories by name
-S sort methods by name
-t suppress header in output, for testing
--list-arches list the arches in the file, then exit
--sdk-ios specify iOS SDK version (will look in /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS<version>.sdk
--sdk-mac specify Mac OS X version (will look in /Developer/SDKs/MacOSX<version>.sdk
应用示例
1.在网上找到一个Mach-O可执行文件MJAppTools
终端执行命令(注意在Mach-O的当前文件夹)
class-dump -H MJAppTools -o Headers
headers.jpeg
2.下厨房App头文件
1.Mac上下载下厨房的IPA包
2.修改IPA包后缀名zip
3.解压这个zip
4.找到Payload,显示recipe.app
5.右键显示包内容,找到Mach-O可执行文件recipe
6.新建ReHeaders文件夹
终端执行命令(注意在Mach-O的当前文件夹)
class-dump -H recipe -o REHeaders/
网友评论