【问题标题】:Openfire Sever IP address not able to connect on Android ApplicationOpenfire 服务器 IP 地址无法在 Android 应用程序上连接
【发布时间】:2014-01-22 23:41:00
【问题描述】:

我是 Openfire 服务器的新手,所以我不太清楚如何使用它。 我正在尝试将服务器连接到我在 web 上找到的 Android 应用程序:

从代码中,有一个主机、端口、用户名和密码。 我尝试输入以下内容: 主机:127.0.0.1 端口:5222

但是,应用程序的结果失败了,表明服务器未连接的错误消息。

我在网上 (Why can't I connect to the openfire server?) 上找到了编辑 openfire.xml 文件的方法。我已将代码中的文件和主机号编辑到我的 IP 地址中,并且它可以正常工作。

我只是想知道为什么原来的服务器ip地址(127.0.0.1)不能工作,而我的ip地址可以工作?我也不确定这个问题是否只适用于我一个人。

目前,我正在使用 Eclipse 中的模拟器来运行应用程序。但我相信将来我会再次面临这个问题,因为我怀疑使用自己的 IP 地址是否能够在手机中工作。

编辑: 我知道 Emulator 需要网络连接才能连接到 Openfire 服务器,这就是我必须更改的原因。

目前我的疑问是如何更改代码以使我的应用程序能够通过手机设备上的 Openfire 连接和发送消息?我曾尝试搜索解决方案,但找不到任何解决方案。我在这个网站上找到的一个解决方案是将代码的连接部分放在 AsyncTask 中。这是真的 ?

【问题讨论】:

    标签: java android eclipse openfire asmack


    【解决方案1】:

    我只是想知道为什么原来的服务器ip地址(127.0.0.1)不能工作,而我的ip地址可以工作?

    127.0.0.1 不是服务器的真实 IP 地址。这意味着本地主机,这意味着代码运行在哪台计算机上。换句话说,Android 应用程序会尝试连接到 Android 设备上的服务器,但我不认为您的 OpenFire 服务器正在 Android 设备上运行,是吗?

    【讨论】:

    • 嗨罗宾!感谢您的帮助。但我很困惑 127.0.0.1 不是服务器的真实 IP 地址。我正在做的应用程序正在尝试连接到 Openfire Server,它允许 2 个设备相互通信。我现在担心的是,如果我将应用程序安装到手机中,恐怕它将无法正常工作,因为我使用自己的 IP 地址作为连接。
    • 服务器IP发生变化如何处理?