swift类型转换之Could not cast value of type xxx to xxx错误的一种特殊情况记录

之前swift项目打包成Framework静态库,提供给OC项目套入使用时,有时会抱这样一个错误:

《swift类型转换之Could not cast value of type xxx to xxx错误的一种特殊情况记录》

这个错误发生的概率比较随机,有时会,有时不会,而且这句话在swift中的使用,是做model类型强制转换(as!)时发生的。

 

分析了很多原因,都不能解决,后来偶然一次才发现了根本原因,很神奇。。。。

 

原因如下:

因为我之前的项目有两个Target,中间有共用model,然后,打包的时候,需要分开两个包,但其中的model我为了省事,就直接拷贝复用了,类名称都是一样的,然后,在使用的项目里,会引用这两个包,解析的时候,有时就会抱如上的错误,猜测原因就是运行时把两个类弄混了,因为名称是一样的。

 

解决办法:

只需要将另一个包里的模型类名称改一下就行了,让两者不要重复。这样就不会产生这个错误了。

可能这也算是iOS里面的一个小bug吧。。。

 

    原文作者:那一抹风情
    原文地址: https://www.cnblogs.com/yajunLi/p/6488957.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞