【问题标题】:openfire chat server giving error while sending emoji'sopenfire聊天服务器在发送表情符号时出错
【发布时间】:2016-08-29 23:59:49
【问题描述】:

我在 openfire 聊天应用服务器中发送表情符号时发现了这个错误。请提出解决方法。

Error Domain=GCDAsyncSocketErrorDomain Code=7 "套接字被远程关闭 peer" UserInfo={NSLocalizedDescription=远程对等端关闭的套接字}

【问题讨论】:

    标签: ios xmpp chat openfire


    【解决方案1】:

    使用NSNonLossyASCIIStringEncodingNSUTF8StringEncoding 对您的消息进行编码

     NSString *messageStr = [NSString stringWithUTF8String:[textview.text UTF8String]];
    
     // encode message
    
     NSData *msgData = [textview dataUsingEncoding:NSNonLossyASCIIStringEncoding];
     NSString *goodMsg = [[[NSString alloc] initWithData:msgData encoding:NSUTF8StringEncoding] autorelease];
    

    注意:如果您的客户端应用程序将表情符号格式化为 \ue415,您可以在之后使用以下内容对其进行转换:

    - (NSString *) substituteEmoticons {
    
        NSString *res = [self stringByReplacingOccurrencesOfString:@"\ue415" withString:@":)"];
        res = [res stringByReplacingOccurrencesOfString:@"\ue403" withString:@":("];
        res = [res stringByReplacingOccurrencesOfString:@"\ue405" withString:@";-)"];
        res = [res stringByReplacingOccurrencesOfString:@"\ue418" withString:@":-x"];
            .....
        return res;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-12-31
      • 2013-06-30
      • 2015-02-05
      • 2011-11-06
      • 2016-02-09
      • 2012-04-15
      • 2011-10-01
      • 2017-01-15
      相关资源
      最近更新 更多