【问题标题】:Can anyone tell me why Smack's Presence.getMode() gives null in the case of available (online) contact?谁能告诉我为什么 Smack 的 Presence.getMode() 在可用(在线)联系的情况下给出 null ?
【发布时间】:2012-07-19 07:08:15
【问题描述】:

我正在使用 XMPP 在 Android 上开发一个聊天应用程序。当 Presence 对象包含:可用(在线)时,我检索 RosterEntery 的存在。我打电话给presence.getMode(),它返回null

谁能告诉我为什么presence.getMode()在在线联系的情况下返回null?当 Presence 对象包含 : available (away) 或 (dnd) 时, Presence.getMode() 工作正常。谁能帮我解决这个问题?

【问题讨论】:

  • 哪个 XMPP 库? 'getMode' 不是一个描述性很强的函数名称。
  • 我使用了 Presence prs = roster.getPresence(r.getUser().toString());如果用户在线,那么它给我可用(在线)。但是当我调用 Presence.Mode pm = prs.getMode();然后它给了我 null 。谁能说出这背后的原因..

标签: xmpp smack


【解决方案1】:

Smack 库文档指出 -“返回存在更新的模式,如果未设置模式,则返回 null。null 存在模式值被解释为与 Presence.Mode.available 相同。”

https://www.igniterealtime.org/builds/smack/docs/latest/javadoc/org/jivesoftware/smack/packet/Presence.html#getMode%28%29

【讨论】:

    猜你喜欢
    • 2021-04-16
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-25
    • 2013-06-05
    • 1970-01-01
    相关资源
    最近更新 更多