如何在 ios sdk 中使用 XMPP 传递位置?

Posted

技术标签:

【中文标题】如何在 ios sdk 中使用 XMPP 传递位置?【英文标题】:How to pass location using XMPP in ios sdk? 【发布时间】:2015-04-20 06:57:16 【问题描述】:

我必须使用 XMPP 传递位置。我该怎么做?

【问题讨论】:

您好,您可以使用堆栈链接将位置发送给用户 1) ***.com/questions/45982752/… 【参考方案1】:

正如我给你的关于单人聊天的建议。当您准备 xml 格式以在 XMPP 中发送消息时,如下所示。

NSXMLElement *body = [NSXMLElement elementWithName:@"body"];
[body setStringValue:textvalue];

NSXMLElement *message = [NSXMLElement elementWithName:@"message"];
[message addAttributeWithName:@"type" stringValue:@"chat"];
[message addAttributeWithName:@"to" stringValue:[jid full]];
[message addChild:body];

[[self xmppStream] sendElement:message];

这里为latitudelongitude 添加两个额外属性,如下所示。

NSXMLElement *body = [NSXMLElement elementWithName:@"body"];
[body setStringValue:textvalue];

NSXMLElement *message = [NSXMLElement elementWithName:@"message"];
[message addAttributeWithName:@"type" stringValue:@"chat"];
[message addAttributeWithName:@"to" stringValue:[jid full]];
[message addAttributeWithName:@"latitude" stringValue:@"22.2345"];
[message addAttributeWithName:@"longitude" stringValue:@"42.2345"];
[message addChild:body];

[[self xmppStream] sendElement:message];

添加两个额外的参数发送消息不会有任何问题。在另一端收到此消息时,您可以从消息中获取latitudelongitude 并根据您的要求使用它。

希望对您有所帮助。

【讨论】:

让我知道你有问题。 遵循哪个 XEP? @FrederickNord,它可能是 xep-0313 或 xep-0022。 奇怪的是,我在这两个 XEP 中都找不到“纬度”。

以上是关于如何在 ios sdk 中使用 XMPP 传递位置?的主要内容,如果未能解决你的问题,请参考以下文章

如何在消息传递 xmpp 框架中发送图像?

获取 xmpp_login 访问令牌在 Facebook iOS SDK 中不起作用

在 iphone sdk 中使用 xmpp 管理朋友?

如何在 iOS SDK 中使用 presentViewController 在视图控制器之间传递变量?

如何在 iphone sdk 的 xmpp 中发送带有消息的笑脸/情感(图像)?

如何在 iOS 应用中实现 webRTC