在Android上,通过本地Openfire服务器在两个用户之间发送数据包/消息时,"404"找不到远程服务器



我很高兴通过本地Openfire服务器在android上实现了stack,它连接到Gmail服务器主机,工作起来很有魅力。教程在这里找到

但当我试图通过安装了本地Openfire服务器的android模拟器连接两个用户时,我遇到了一个错误(粘贴在下面)。

03-23 16:24:01.392: DEBUG/SMACK(233): 04:24:01 PM SENT (1155246128): <message id="t0tgA-5" to="justestingchat2" type="chat"><body>hi</body></message>
03-23 16:24:07.032: DEBUG/SMACK(233): 04:24:07 PM RCV  (1155246128): <message id="t0tgA-5" to="justestingchat@admin-pc/Smack" from="justestingchat2" type="error"><error code="404" type="cancel"><remote-server-not-found xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/></error></message>
03-23 16:24:07.062: INFO/System.out(233): Received message: null

以下是我的一些系统级描述:

  • 我试图通过android中的两个模拟器连接两个用户名、电子邮件和密码不同的用户
  • 当用户登录Presence presence = new Presence(Presence.Type.available);时,他们都在Openfire的仪表板上显示"Presence-Available"
  • 从粘贴在上面的错误代码来看,消息Id是相同的,我想这没有问题。(如果我错了,请纠正我)
  • 我使用上面代码教程中提供的Packet Listener
  • 我还尝试使用聊天管理器来使用以下代码收听消息但没有使用它返回"Null"

有人能帮我吗?到底怎么了?如果它可以与谷歌对话,为什么不使用本地服务器?或者可能是因为使用了模拟器?

更新1:

为了找出问题所在!我下载了Spark客户端并进行了一些测试。我发现我可以从Spark向Android客户端发送数据包/消息,但不能从Android向Spark发送,这给了我一个错误404还有人能帮我提供至少一些线索吗?

您的Android代码是错误的。您正在将消息发送到不包括xmpp域的Jidjustestingchat2。尝试将您的消息发送到justestingchat2@admin-pc

最新更新