您必须在调用connect错误之前设置myJID

时间:2013-08-18 13:22:19

标签: iphone ios

我想为聊天应用程序实现'OpenFire'服务器。我在https://github.com/rayaleen/OpenFireClient的git上获得了源代码。  在登录按钮操作时,它显示以下错误:

Error connecting: Error Domain=XMPPStreamErrorDomain Code=2 "You must set myJID before calling connect." UserInfo=0x7a87c80 {NSLocalizedDescription=You must set myJID before calling connect.}

但我找不到任何文件来实现这一点。有没有人知道这种类型的错误?任何文档链接都会更有帮助。

2 个答案:

答案 0 :(得分:1)

如果你使用ios的XMPPFramework,你可以找到一个名为XMPPJID和XMPPStream的类。 我相信你已经调用了XMPPStream的实例方法“connect”,这导致了你说的话。 因为你可以实际搜索实例所在的变量,例如它命名为'aSteam',然后在整个项目中搜索句子'aSteam connect'。 如果成功,你需要在connet之前添加一行。它应该是

[aSteam setMyJID:[XMPPJID JIDWithString:@"yourname@domain.com/resouse"]]

如果您不知道JID的含义,请搜索XMPP的相关文件。

  

但我找不到任何文件来实现这一点。

刚看到它,如果你找不到介绍,我可以给你我写的演示,服务器也可以自己设置。如果需要

答案 1 :(得分:0)

如果我使用此代码,则在登录按钮操作时会显示以下错误:

self.jid=[NSString stringWithFormat:@"%@@%@",self.username,self.host];
//[_xmppStream setMyJID:[XMPPJID jidWithString:_jid resource:@"drrr"]];

所以我将其更改为我的项目,所以这是正常的,我希望它适合你

[_xmppStream setMyJID:[XMPPJID jidWithString:self.username]];