Issue(s)
当我尝试在 Android 设备上运行 Meteor“todos”示例时,它永远停留在加载屏幕上。从下面的屏幕截图中可以看出,显示了以下错误消息:
Failed to load resource: net::ERR_ADDRESS_UNREACHABLE http://10.0.2.15:3000/sockjs/info?cb=...
Also the app indicates it is having trouble connecting.
Is it possible this could be due a bug in the Cordova Meteor 1.0 release? Or am I missing some important configuration/setup step?
设置/配置
系统设置
- 流星1.0
- Ubuntu 14.04 虚拟机与 VirtualBox 4.3.18
- Motorola Droid Turbo (Android 4.4.4),启用开发者模式和 USB 调试
- 铬38
在 Linux 终端中运行这些命令
- 流星创建——待办事项示例
- cd todos
- ifconfig
- 流星运行 android-device –p 10.0.2.15:3000
打开 Chrome 开发者工具
- 等到“todos”应用程序在我的 Android 设备上启动(它确实启动,但不会越过加载屏幕)。
- 然后打开 Google Chrome 并在搜索栏中输入“chrome://inspect”。
- 单击通过 USB 连接的 Android 设备下列出的“Todos”应用程序下的“检查”链接。
扩展斯拉夫科的答案......
移动设备通过 USB 下载初始模板等,但之后尝试从服务器加载数据。在您的情况下,移动设备已(或应该)通过路由器提供的 Wifi 连接到您的 LAN。我还假设您的开发电脑已连接到该路由器。
现在服务器正在虚拟机内运行,这将使移动设备无法看到您的服务器。虚拟机中的 IP(在您的情况下为 10.0.2.15)无法从 LAN 的其余部分直接访问,因为 LAN 的其余部分只能看到您的主机的 IP(可能是 192.168.x.x)。
当你运行流星命令时
run android-device –p 10.0.2.15:3000
您告诉仪表在该 IP 上启动网络服务器,但您也告诉移动设备在该 IP 上查找网络服务器(如上所述,它看不到)。
所以你会怎么做?
2 件事...
- You will need to port forward from the guest VM to your Host PC. To do this...
- 获取你的主机 IP...在 Windows 中运行 cmd,然后 ipconfig...保存
- 在您的来宾虚拟机上使用 ifconfig 获取 IP(在您的情况下为 10.0.2.15)
- 在您的来宾虚拟机上,转到顶部的 Virtual Box 菜单,然后在该窗口中的“设备”->“网络”->“网络设置...”单击“端口转发”按钮。
- 在那里添加一条规则... HostIP = 第 1 步中的主机 IP,主机端口 = 3000,Guest IP = 第 2 步中的 IP,Guest Port = 3000.... 点击“确定”
- 接下来,您需要告诉您的移动设备在与服务器实际运行的 IP 不同的 IP 上查找服务器。现在您正在将网络服务器 IP 转发到您的主机 PC,您希望设备查看您的主机 PC 的 IP
所以新的命令是......
meteor run android-device –p 10.0.2.15:3000 --mobile-server 192.168.x.x:3000
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)