金鈴清脆噬血誤 一生總被癡情訴
聊天是個(gè)比較大的功能模塊,想要寫好聊天功能也不是件易事,更何況現(xiàn)在的即時(shí)通訊已被騰訊老大(QQ、微信)給占領(lǐng)了市場,也許你們公司開發(fā)的聊天功能用戶只聊了一兩次?!懊琅愕奈⑿攀鞘裁矗俊?,然后就在微信噼噼啪啪的聊起來了。所以一般都是拿現(xiàn)成的第三方即時(shí)通訊集成到項(xiàng)目中,這樣也減少了開發(fā)成本,但有時(shí)第三方滿足不了我們的需求......好吧,那就自己開發(fā)咯
本人用過xmpp、socket、Socket.io協(xié)議寫過聊天功能,今天我說一下socket.io的基本使用。
首先導(dǎo)入swift的一個(gè)庫:https://github.com/socketio/socket.io-client-swift,這個(gè)庫中已經(jīng)有基本使用了,這里就不多說了,在oc中導(dǎo)入swift庫需要注意的是:
target '項(xiàng)目名' do
#swift庫要加上use_frameworks!
use_frameworks!
pod 'Socket.IO-Client-Swift', '~> 9.0.1'
end
要用時(shí) 導(dǎo)入#import <SocketIO/SocketIO-Swift.h> 或 @import SocketIO;
/// Represents the state of the client.
typedef SWIFT_ENUM(NSInteger, SocketIOClientStatus) {
/// 沒有連接
SocketIOClientStatusNotConnected = 0,
/// 連接斷開
SocketIOClientStatusDisconnected = 1,
/// 連接中
SocketIOClientStatusConnecting = 2,
/// 已連接
SocketIOClientStatusConnected = 3,
};
// 連接到服務(wù)器
- (void)connect;
// 重連
- (void)reconnect;
// 斷開連接
- (void)disconnect;
聊天有很多細(xì)節(jié)要處理,這里不能一一展示出來,因涉及東西太多,加油你們是最“胖”的