定位到crash后,不确定是哪个静态库引起的,需要查看。
命令如下:
首先确定静态库支持的架构:
file xxx.a
打印如下
image.png
确定了静态库有哪些架构后,决定要解析哪个架构。
armv7|armv7s|arm64都是ARM处理器的指令集
i386|x86_64 是Mac处理器的指令集
-
arm64:iPhone6s | iphone6s plus|iPhone6| iPhone6 plus|iPhone5S | iPad Air| iPad mini2(iPad mini with Retina Display)
-
armv7s:iPhone5|iPhone5C|iPad4(iPad with Retina Display)
-
armv7:iPhone4|iPhone4S|iPad|iPad2|iPad3(The New iPad)|iPad mini|iPod Touch 3G|iPod Touch4
-
i386是针对intel通用微处理器32位处理器
-
x86_64是针对x86架构的64位处理器
-
模拟器32位处理器测试需要i386架构,
-
模拟器64位处理器测试需要x86_64架构,
-
真机32位处理器需要armv7,或者armv7s架构,
-
真机64位处理器需要arm64架构。
单独抽出某个架构
lipo xxx.a -thin arm64 -output outputname.a
拆分静态库
ar -x outputname.a
然后目录下就多出了很多.o的文件
nm xxx.o
就可以查看具体类的接口了。
目前仅仅在OC的静态库中查看过
网友评论