公司項(xiàng)目最近想將websocket干掉,全部遷移成用SocketIO來(lái)實(shí)現(xiàn)客戶端與服務(wù)器的長(zhǎng)連接。關(guān)于SocketIO的介紹,網(wǎng)上有很多,這里不贅述。
項(xiàng)目地址:Socket.IO-Client-Swift
因?yàn)镾ocketIO的OC版本已經(jīng)很老了,而且各種問(wèn)題,所以這里我們采用最新的Swift版本。下面開(kāi)始用Cocopods進(jìn)行集成?!咀⒁?,這里有個(gè)坑是SocketIO現(xiàn)在不支持手動(dòng)導(dǎo)入的,所以你仍然手動(dòng)導(dǎo)入的會(huì)一直報(bào)錯(cuò)】
use_frameworks!#OC項(xiàng)目默認(rèn)是不使用use_frameworks,但是混編時(shí)候有Swift的話就一定要加這個(gè)
target '你App的名字' do
pod 'Socket.IO-Client-Swift', '~> 15.0.0'
end
然后
pod install
run一下,不出意外的報(bào)錯(cuò),看一下是CocoaHTTPServer的庫(kù)報(bào)錯(cuò)了

繼續(xù)run,繼續(xù)報(bào)錯(cuò)。項(xiàng)目里報(bào)了類似很多這種錯(cuò)誤,這個(gè)改起來(lái)還好,只要把尖括號(hào)改成雙引號(hào)就可以了,這兩種區(qū)別可以自行百度。

繼續(xù)run,繼續(xù)報(bào)錯(cuò),library not found for -lXXXXX
這種的也比較好解決。
解決方案
繼續(xù)run,繼續(xù)報(bào)錯(cuò)。這里是SD里面webp找不到了。

項(xiàng)目里有用到SDWebimage和YYImage還有Webp,SD是手動(dòng)拖到項(xiàng)目的,YY是pod的,webp庫(kù)在YY的pod子項(xiàng)目里,這個(gè)改起來(lái)也很簡(jiǎn)單,項(xiàng)目刪除SD,然后導(dǎo)入SD的webp
pod 'SDWebImage/WebP'
然后pod install一下,繼續(xù)run 項(xiàng)目成功運(yùn)行。
Tips
Showing Recent Messages The “Swift Language Version” (SWIFT_VERSION) build
有時(shí)候會(huì)報(bào)以上錯(cuò)誤,這時(shí)候指定下Swift版本號(hào)就行了。如果設(shè)置后還是無(wú)用,需要檢查下Xcode的版本,版本過(guò)低是不支持Swift5的,需要更新系統(tǒng),更新Xcode即可。