本文仅收集了作者工作中遇到的错误情况,边查错边更新,当然作者遇到的肯定是很小的一部分,如果有兄弟姐妹没遇到其他的错误情况欢迎私信,及时更新,谢谢大家。
一、 Invalid bitcode signature
-
可能是含有不支持bitcode的包引起,buildSetting 搜索 bitcode
将YES ---> NO
2.新版Xcode,可能会出现这种情况了:当选择的不是模拟器或真机时会报这种错误。
image.png
二、_OBJC_CLASS_$_某文件名", referenced from:问题
-
例如我最近升级xcode后更换高德地图的包出现的问题,可以看出是AMapLocationKit.framework包出现的问题。
image.png
点中AMapLocationKit.framework 查看membership 没有勾选,这是xcode9,拖拽文件经常会出现的问题。勾选就好了。
image.png
三、 Duplicate Symbol - 重复引用
-
在工程中重复导入了某一个类或文件,这一般出现在你添加第三方库的时候比较多,在不知道的情况下又导入了一次相同的类。
-
在多个文件中重复定义某个东西,例如:在两个文件中定义了相同的枚举。
以上两种错误很好找出对应的错误位置。
3.第三种是我目前遇到的,再导入第三方高德framwork的时候MAMapKit和AMapNaviKit会有重复错误提示,但是你不会找到位置在哪里,只会有一大堆的 .o 提示。这时你要了解下面:
非系统Framework静态库都会被打包到app中,所以会产生"Duplicate Symbol"的错误。在Build Settings->Other link flags中删除所有的-all_load与-force_load, XCode会很smart的去掉"Duplicate Symbol"。
看下图,找到other linker flags 删除里面的 all_load 和 force_load 等
image.png
网友评论