天天看点

【三分钟教程】轻松使用XMPP实现iOS单聊教程(附源码)

编号

需要修改的代码

1

//

// 

Prefix header

The contents of this file are implicitly included at the beginning of

every source file.

#import <Availability.h>

//服务器IP

#define

kXMPPHost @"115.29.222.253"

//服务器端口

kHostPort 5222

//服务器名称,也是用户名后缀

kHostName @""

2

AppDelegate.m

//  企信通

Created by chenyilong on 14-3-3.

Copyright (c) 2014年 博客地址:  All

rights reserved.

-

(void)connect

{

    //

2. 从系统偏好读取用户信息

    NSUserDefaults *defaults

= [NSUserDefaults standardUserDefaults];

//   

NSString *hostName = [defaults

stringForKey:kXMPPLoginHostNameKey];

    NSString *hostName

= kHostName;

    NSString *userName

= [defaults stringForKey:kXMPPLoginUserNameKey];

    // 如果用户名或者主机为空,不再继续

if (hostName.length == 0 || userName.length == 0) {

        if (

userName.length == 0)

        // 用户名和主机都为空说明用户没有登录,通常是第一次运行程序

        // 直接显示登录窗口

[self showStoryboardWithBoardName:kLoginStoryboardName];

        return;

}

    [_xmppStream setHostName:kXMPPHost];

[_xmppStream setHostPort:kHostPort];

    _xmppStream.myJID =

[XMPPJID jidWithUser:userName domain:hostName resource:nil];

    // 连接

GCDAsnycSocket框架中,所有的网络通讯都是异步的

    NSError *error

= nil;

    if (![_xmppStream connectWithTimeout:XMPPStreamTimeoutNone error:&error])

        DDLogInfo(@"%@",

error.localizedDescription);

} else {

        DDLogInfo(@"发送连接请求成功");

3

服务器搭建教程:

基本程序介绍(用户登录界面)教程:

官方demo:

如需帮助,[email protected]交流,朝九晚五之外(工作时间之外)才登该QQ

下一篇: 冒泡排序