ios xcode 里面的 other linker flags -ObjC作用

ios xcode 里面的 other linker flags -ObjC作用

当使用静态库的时候,如果静态库中包含了系统的类扩展,例如 UIView的catagory,那么编译的时候,这些类扩展因为和系统类重名,所以类扩展里面的方法不会被添加上链接符号,这样你的app就不会找到这些方法.添加 -ObjC 以后,会把静态库中所有的 oc 方法都添加上链接符号,这样你的app可以找到里面所有的方法,但是app体积会变大.
如果不添加这个- ObjC方法,使用静态库里面的方法会报错,例如下面,我故意删掉 -ObjC链接符号以后,使用百度地图的sdk方法,就会找不到方法
ios xcode 里面的 other linker flags -ObjC作用
unrecognized selector sent to instance 0x600000130e10’

发送到实例0x600000130e10的选择器无法识别 .这里就找不到百度地图静态库里面的 方法 [BMKBaseHTTPManager setRetryPolicyLogMessagesEnabled:]
解决方法就是 添加 -ObjC
ios xcode 里面的 other linker flags -ObjC作用