“meteor run android” 命令可以运行应用程序并启动 Android 模拟器,但我无法在模拟器中找到或运行应用程序。

6

要开始进行Android开发,我正在使用来自Percolate Studio的示例应用程序“todos”。 从在VMWare Workstation 10中运行的Ubuntu 14.04控制台中,我可以成功运行todos应用程序。

gbdmeteor@ubuntu:~/todophone/todos$ meteor run android
Starting android emulator                                                  
[[[[[ ~/todophone/todos ]]]]]   

=> Started proxy.               
=> Started MongoDB.                                                        
=> Started Cordova (android).                                   
=> Started your app.                                                       

=> App running at: http://localhost:3000/

这将启动安卓模拟器,但是我在模拟器中找不到运行的目标应用程序(todos)。我错过了什么吗?


Meteor IRC 评论:构建应用程序以适用于设备...您需要告诉 Meteor 为您的 Android 服务器构建它。 meteor build <buildfolder 不在 meteor 项目下> -p http://meteor-server-url:port - gbdMeteor
但是命令:meteor build <bundle path> --server <host>:<port> 似乎是针对设备而不是模拟器的?这将在<target bundle path>生成一个目录,其中包括服务器部署tarball... - gbdMeteor
'meteor run android --verbose' 表示构建和启动成功: 构建成功 总时间:1 分钟 13 秒 在模拟器上安装应用程序... 使用 apk:/home/gbdmeteor/todophone/todos/.meteor/local/cordova-build/platforms/android/ant-build/Todos-debug-unaligned.apk 启动应用程序... 启动成功 命令以错误代码 0 结束:/home/gbdmeteor/todophone/todos/.meteor/local/cordova-build/platforms/android/cordova/run --emulator - gbdMeteor
1
如果你在虚拟机中运行meteor run android,我很惊讶它能正常工作。我在VirtualBox(Ubuntu 14.04 客户机,Windows 主机)中尝试过,Android SDK 无法安装在虚拟机中。 - Dan Dascalescu
2个回答

4
  1. 使用http://localhost:3000是不起作用的,因为localhost只在主机操作系统的上下文中有意义。 打开Android浏览器并转到我的主机计算机的IP地址:192.168.56.130:3000然后Meteor应用程序就会像在浏览器中一样出现。

  2. 如果我退出Meteor应用程序(从命令行中使用ctl-c),并保留Android模拟器运行状态, 然后我再次从命令行运行“meteor run android”... Meteor成功加载,安装图标并启动应用程序!

现在我必须将应用程序加载到真正的Android设备上,并查看相机是否正常工作。


(2) 对我仍然不起作用。我让模拟器保持打开状态,并使用“meteor run android”重新启动应用程序,但仍然没有运气。 - Kostanos

1
这对我有用:

这个对我起了作用:

$ export BIND_IP=[YOUR LOCAL IP, ie. 192.168.1.x]
$ meteor run android

如果还没有安装,在Android Studio中预先安装API 22,不要忘记。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接