swift類型轉換之Could not cast value of type xxx to xxx錯誤的一種特殊情況記錄


之前swift項目打包成Framework靜態庫,提供給OC項目套入使用時,有時會抱這樣一個錯誤:

這個錯誤發生的概率比較隨機,有時會,有時不會,而且這句話在swift中的使用,是做model類型強制轉換(as!)時發生的。

 

分析了很多原因,都不能解決,后來偶然一次才發現了根本原因,很神奇。。。。

 

原因如下:

因為我之前的項目有兩個Target,中間有共用model,然后,打包的時候,需要分開兩個包,但其中的model我為了省事,就直接拷貝復用了,類名稱都是一樣的,然后,在使用的項目里,會引用這兩個包,解析的時候,有時就會抱如上的錯誤,猜測原因就是運行時把兩個類弄混了,因為名稱是一樣的。

 

解決辦法:

只需要將另一個包里的模型類名稱改一下就行了,讓兩者不要重復。這樣就不會產生這個錯誤了。

可能這也算是iOS里面的一個小bug吧。。。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM