openfire xmpp smack library我们怎么知道有没有收到订阅请求

How can we know if we have received any subscription request in openfire xmpp smack library

我是 xmpp 初学者 openfire.I 正在创建 android 聊天应用程序。

我知道如何在 openfire 中发送和接受订阅请求。但是我们如何知道用户是否在 android 中收到了来自其他用户的任何订阅请求?

我在网上搜索过这个问题,但没有找到满意的答案。

我们是否会根据要求收到任何自动通知,或者我们必须调用任何功能。 请帮忙 me.I 非常感谢您宝贵的回答

首先,您需要了解 smack 中的一些内容。例如,您需要添加一个 packet listner 以便您可以访问所有 packets。如果不注册您的监听器,您将不会收到任何数据包,但 smack 仍会收到这些数据包,甚至会在 logcat 中打印这些数据包。所以注册你的监听器并在 smack 配置中设置 debugger = true 以便它打印 logcat 中的所有数据包,你可以更好地理解。

其次,是的,B会得到A添加你的数据包("notification"),现在根据Roster subscription settings,将做出决定。

第三,据我所知,只要B上线,你就会收到这些subscription/presence包。所以你有那个地方可以采取行动。

我真的建议您在此处查看 官方文档 Smack Docs