worklight服务器根URL在Android设备中连接

时间:2013-07-31 11:19:03

标签: android ibm-mobilefirst

我尝试将一个worklight应用程序部署到我的Android设备(HTC Desire)中,没有任何希望我收到以下错误: - 请求超时[ANDROID IP:8080 / console / apps / services 默认选项:失败超时

http://ANDROIDIP:8080/console/apps/services...

确保应用程序可以使用主机地址(尤其适用于Android和iphone应用程序) 我通过whatip.com找到我的android IP地址,并用它配置我的应用程序描述符xml文件。 当我使用以下

时,它适用于Android模拟器
 <worklightServerRootURL>http://10.0.2.2:8080</worklightServerRootURL>

但不适用于移动设备 有什么建议吗?

2 个答案:

答案 0 :(得分:1)

10.0.2.2是一个特殊的地址 only 在android模拟器上运行。在模拟器上,它将路由到运行模拟器的主机。在实际设备上,此地址不会被路由到任何地方。

正如Idan所说,必须可以从Android设备访问Worklight服务器。这通常意味着Worklight服务器具有可从Internet访问的地址,或者Android设备与运行工作灯服务器的LAN具有wifi连接。

假设您尝试在worklight studio中使用测试服务器进行测试,请首先确定计算机的IP地址。如果您在NAT路由器后面,whatip.com将返回路由器的IP,而不是计算机的IP。在命令行中使用ifconfig(Windows上的ipconfig)来确定计算机的IP地址。您的计算机可能有多个IP地址。请务必选择与您将连接Android设备的LAN对应的设备。如果您不确定这是哪一个,您可能需要查看路由器的配置。接下来,验证计算机的防火墙是否已打开端口8080。然后通过wifi将您的Android设备连接到与您的计算机相同的LAN。

要验证您的设备是否可以访问worklight服务器,请尝试在手机浏览器中打开worklight控制台。 (http:// [计算机的IP]:8080 / console)一旦工作,您应该能够在worklightServerRootURL中使用相同的IP来构建应用程序,以便它可以在该设备上运行。

答案 1 :(得分:0)

  1. worklightServerRootURL应指向主机的公共IP地址,而不是设备IP。
  2. 设备和Worklight Server必须位于同一网络(公共互联网,wifi ...)。