iOS 使用SocketIO 實現聊天功能-傾城孤月


首先,第一步,導入框架

pod 'Socket.IO-Client-Swift'

pod 'EBBannerView'//自定義彈框

 

2.登錄SocketIO以連接服務器

//連接

 [SocketIOClientHandler handler].manager=[[SocketManager alloc]initWithSocketURL:[NSURL URLWithString:@"http://192.168.0.108:9001"] config:@{@"log": @NO, @"forcePolling": @NO,@"doubleEncodeUTF8":@true}];

doubleEncodeUTF8 設為TRUE為了避免中文亂碼

 

 SocketIOClient *socket=[SocketIOClientHandler handler].manager.defaultSocket;

    [SocketIOClientHandler handler].client=socket;

    

    [[SocketIOClientHandler handler].manager connectSocket:[SocketIOClientHandler handler].client];

    [[SocketIOClientHandler handler].manager connect];

    //監聽連接成功

    [[SocketIOClientHandler handler].client on:@"connect" callback:^(NSArray * _Nonnull data, SocketAckEmitter * _Nonnull ack) {

        NSLog(@"socket connect = :%@",data);

 

    }];

   //發送消息 

[[SocketIOClientHandler handler].client emit:@"shopLogin" with:@[dict]];

 

  //監聽斷開連接

    [[SocketIOClientHandler handler].client on:@"disconnect" callback:^(NSArray * _Nonnull data, SocketAckEmitter * _Nonnull ack) {

        NSLog(@"socket disconnect=:%@",data);

   }];

  //斷開連接

   [[SocketIOClientHandler handler].manager disconnect];

      [[SocketIOClientHandler handler].manager removeSocket:[SocketIOClientHandler handler].client];

 

  在監聽之后連接

   [[SocketIOClientHandler handler].client connect];

 //監聽接收數據

    [[SocketIOClientHandler handler].client on:@"recContent" callback:^(NSArray * _Nonnull data, SocketAckEmitter * _Nonnull ack) {

        

        NSLog(@"data is %@",data);

    

        }];

提示:只需要登錄一遍,不需要重復登錄

 


免責聲明!

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



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