swift文件調用oc分類時崩潰解決辦法(可能全網唯一)

背景

oc為基礎創建的sdk混編工程,在被sdk關聯的混編demo工程中swift文件調用時,會崩潰,提示找不到sdk中oc分類方法。常規的,在demo中設置-Objc和-all_load也還是會崩。

工程配置:截屏2021-08-09 下午4.28.19

網上找了一圈都找不到能解決此問題的答案。

峰迴路轉

在微信群里提問後,經熱心群友提示,嘗試了 force load 方法,不過還是不行。

有感而發,聯想到應該就是文件關聯問題。

於是嘗試手動把編譯出來的 sdk 包,拖進 demo 工程:

截屏2021-08-09 下午4.28.27

再運行,真的可以了!不崩潰了!

真好,感謝群友!

小結

把編譯出的包放到 link binary with libraries 里,就可以了!只是設置 demo 的 dependencies 關聯 sdk 工程是不夠的。

這算是混編sdk和混編demo工程的一個坑吧!

在 Stack Overflow 里也分享了這個坑,希望能幫到遇到類似問題的朋友:

//stackoverflow.com/questions/3998483/objective-c-category-causing-unrecognized-selector/68708892#68708892