4

我很高兴通过本地 Openfire 服务器在 android 上实现 smack,它连接到 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中的两个模拟器连接两个具有不同用户名、电子邮件和密码的用户。
  • 两个用户都在登录时在 Openfire 的仪表板中显示“存在 - 可用”Presence presence = new Presence(Presence.Type.available);
  • 从上面粘贴的错误代码中,消息 ID 是相同的,我想这没有问题。(如我错了请纠正我)
  • 我使用Packet Listener上面教程中提供的代码
  • 我还尝试使用聊天管理器使用此代码收听消息, 但没有使用它返回“Null”

请有人可以帮我看看到底出了什么问题?如果它可以与 google talk 一起使用,为什么不使用本地服务器?还是可能是因为使用了模拟器?

更新 1:

找出问题所在!我下载了Spark客户端并做了一些测试。我发现我可以将数据包/消息从 Spark 发送到 Android 客户端,但不能从 Android 发送到 Spark,这给了我一个错误 404!任何人都可以帮助我至少一些线索吗?

4

1 回答 1

17

你的安卓代码是错误的。您将消息发送到不包含 xmpp 域 justestingchat2 的Jid。尝试将您的消息发送到justestingchat2@admin-pc

于 2012-06-04T13:05:09.337 回答