【问题标题】:Send info regarding user via XMPP in iOS在 iOS 中通过 XMPP 发送有关用户的信息
【发布时间】:2013-02-08 00:22:53
【问题描述】:

我已经实现了聊天功能,一切正常。我按照该链接http://mobile.tutsplus.com/tutorials/iphone/building-a-jabber-client-for-ios-server-setup/ 教程来实现聊天应用程序。现在我想发送有关用户的信息,例如照片、生日、昵称等。所以我只想创建该信息并发送给其他用户。

我还想将图像(数据)发送给另一个用户。

【问题讨论】:

  • 嗨,我也在做聊天开发。但是我无法通过聊天进行文件/图像传输,你让这个东西工作了吗?此外,我在 google 和 stack-overflow 上进行了很多搜索,但没有得到任何可行的想法/代码。所以,如果你让这个东西正常工作,请建议我。提前致谢。
  • 是的,我已经做到了@sunil z
  • 哦,太好了!请问,你能告诉我如何在iphone中通过聊天实现文件/图像传输吗?
  • NSXMLElement *photo = [NSXMLElement elementWithName:@"PHOTO"]; NSXMLElement *binval = [NSXMLElement elementWithName:@"BINVAL"]; [照片 addChild:binval]; [binval setStringValue:[dataPic base64Encoded]]; [留言添加孩子:照片]; @sunilz:使用这个
  • pastie.org/6346052 看看这个

标签: iphone ios objective-c xmpp xmppframework


【解决方案1】:

要设置头像和其他用户信息,您应该查看 vcard 扩展 XEP-0153(specificationimplementation)。

您将在 XMPPFramework iphone demo 中找到 vCard 的示例实现。 您将使用以下调用来更新和获取 vCard:

- (XMPPvCardTemp *)fetchvCardTempForJID:(XMPPJID *)jid;
- (XMPPvCardTemp *)fetchvCardTempForJID:(XMPPJID *)jid useCache:(BOOL)useCache;
- (void)updateMyvCardTemp:(XMPPvCardTemp *)vCardTemp;

要发送二进制数据,您有一些选择。 XMPP 框架 implements XEP-0065。还有其他方法可以发送数据,例如:

您可以将其实现为扩展并将它们集成到 XMPPFramework 中。

In 将很快自己集成发送图像和视频等二进制数据。因此,请对您的实施发表评论。

【讨论】:

  • 它太有帮助了,但你能不能给我发一点编码部分。如果你这样做了。它会给你一个想法
  • 嘿,我更新了我的 vCard,但无法获取 xmppvCardTemp。你能给我那个代码吗?如果您可以将代码粘贴到 paste.com 并将链接发送给我thanx
  • @PraviJay:我们还没有使用电子名片。但是看看 xmppframework 的演示实现。他们集成了电子名片,它确实对我有用。 xmppframework
  • 你能帮我做v-card吗,因为我真的卡在里面了
  • 使用他们的代码,您应该可以使用:CardTempModule 的- (XMPPvCardTemp *)fetchvCardTempForJID:(XMPPJID *)jid,这样您就拥有了所需的所有数据。或者用- (void)updateMyvCardTemp:(XMPPvCardTemp *)vCardTemp更新它。
【解决方案2】:

首先在 spark 中设置用户 profire,然后使用 [XMPPvCardTempModule myvCardTemp]

【讨论】:

    猜你喜欢
    • 2017-02-01
    • 1970-01-01
    • 2013-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-24
    • 1970-01-01
    • 2013-01-27
    相关资源
    最近更新 更多