Mac系统10.11添加了新特性Rootless,限制了root用户的权限(/usr/bin,不允许更改)。那就改变环境变量来使用class-dump。
class-dump下载地址
http://stevenygard.com/projects/class-dump/
1、首先在当前用户下新建一个bin目录,在终端里
mkdir ~/bin
2、 打开下载好的class-dump的dmg,把里面的文件全部复制到创建的bin目录下,赋予其可执行权限
chmod +x ~/bin/class-dump
3、打开bash_profile文件配置环境变量,在最后一行添加:export PATH= HOME/bin/: PATH
vim ~/.bash_profile
4、添加完之后,执行
source ~/.bash_profile
5、测试是否成功
zhen:~ zhenxb$ class-dump
class-dump 3.5 (64 bit)
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
--sdk-root specify the full SDK root path (or use --sdk-ios/--sdk-mac for a shortcut)
6、class-dump使用
将自己打包的ipa文件,修改后缀名,修改成.zip,然后进行解压
class-dump -H 解压完成的APP的文件路径/你的app.app -o /Users/morris/Desktop/指定生成文件路径