android - 如何在 openfire XMPP 中启用/禁用 LastSeen

标签 android ios xmpp ejabberd openfire

如何在 XMPP Android 和 iOS 中启用和禁用用户的最后一次查看。 我尝试禁用 LastActivityManager,但它不起作用。

在 smack 中还有一个 setLastActivity 的选项。我也在其中设置了 -1,但它不起作用。

此外,我更改了用户的状态和订阅,并尝试了所有方法。

那么在XMPP中是否有关于last seen的设置/配置或者我们需要用传统的API方式来管理它?

最佳答案

根据 XEP-0012 , 用户 A 可以查询用户 B 的最后上线时间,前提是用户 A 订阅了用户 B 的状态。

存在状态:

  • 用户 A 向用户 B 发送状态订阅请求,用户 B 接受它。 (用户A可以查看用户B的最后一次见面)
  • 用户 B 也向用户 A 发送在线状态订阅请求,用户 A 接受它。 (用户 B 现在还可以查看用户 A 的最后一次见面)。

XMPP 服务器(Openfire、Ejabberd)已实现与 XEP 定义的相同逻辑。

因此在您的应用程序中,您需要处理状态订阅/取消订阅以允许/禁止用户之间最后一次见面。

关于android - 如何在 openfire XMPP 中启用/禁用 LastSeen,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44543239/

相关文章:

ios - 使用 AVFoundation 录制视频会停止声音

android - xmpp facebook 不发送消息

javascript - 如何在xmpp服务器中创建新组

Android Png 覆盖问题

android - ViewPager - FragmentStatePagerAdapter 和处理旋转

android - 构建混合应用程序,从哪里开始?

ios - 在 Swift 中用自定义对象填充数组

java - Android:使用按钮单击来迭代不同的消息

c# - 从 iOS TabBar 移除着色

iphone - 如何在后台保持 iphone ios xmpp 连接?