看起来文档有点薄,我向你保证我试图在网上找到这个,但我真的不知道开发过程应该如何与phonegap和eclipse一起工作。
我遵循了许多教程之一,并使用cordova命令行创建了Hello World示例。然后我添加了android平台并运行构建。之后,我根据使用子目录platforms / android目录指示的现有源添加了andoridy位作为eclipse中的项目。这使我能够设置模拟器并且一切运行良好。
我现在遇到的问题是开发过程。
据我所知,我必须编辑顶级文件,而不是eclipse中项目资产目录中显示的文件,因为它们是使用“build”命令创建的。我在eclipse中创建的项目中不存在这些顶级文件,因为它们位于项目的根目录之上。
所以,我的问题是......我可以用eclipse以合理的方式开发这个项目吗?
我目前正在做的是编辑android www文件,然后将其提升到云构建,我将它们复制回树上。这看起来很疯狂。
有没有办法在eclipse中提供真实文件,以便我可以开发它们然后轻松地构建和部署到模拟器?
PS是我的想象力还是Cordova构建需要很长时间!
解决方案
我在Android项目中添加了一个文件夹,该文件夹是指向根目录中www的位置的链接。这是在创建文件夹的高级选项下。
答案 0 :(得分:15)
为此,您必须使用两个不同的eclipse项目。 一个包含用于开发的myProject / www文件夹(让我们称之为'顶级项目')和一个用于特定平台项目的文件夹(例如android,就像你已经做过的那样)。
在您的顶级项目中,您编写代码,如果您愿意,您甚至可以调试到一定程度(不需要cordova的功能)。然后保存并在CLI中键入cordova prepare
。然后,您可以切换到您的Android项目,点击刷新(F5)并运行模拟器/设备并查找错误,并进行Android-Manifest更改。如果您想更改代码,请再次切换到顶级项目并再次执行相同操作。
这似乎有点不方便,对。尽管如此,想想cordova不仅仅是为了在Android上开发,而是在ios,windows phone,blackberry上......要访问所有这些平台,你必须切换到多个ide。这使得在独立项目中使用顶级代码变得容易得多。
一些副节点:
完成此过程几次后,您将松开不超过2或3秒的cordova prepare
并切换项目。我认为哪个好。
我自己不只是使用不同的eclipse项目,我甚至使用不同的eclipse安装。这似乎更适合我,因为它可以防止我混淆顶级和低级文件。
即使您只为Android开发,您也应该使用两个不同的项目,因为'cordova prepare'(或任何包含prepare,如构建,模拟和运行的cli命令)将覆盖/删除您的文件。
在我的安装中,使用CLI构建所花费的时间与在eclipse中相同。这是有道理的,因为我使用相同的sdk。但是,在上面编写的过程中,不需要使用cli-build命令。
如果您只使用Android平台并且不容易与一个项目中的同名文件混淆,您可以链接Android项目中的myApp / www文件夹。在这种情况下,你将只有一个项目(这个答案的信用额去了stevemarvell本人,我只是为了完整性而添加这个)
答案 1 :(得分:0)
除了上面的解决方案,我还创建了一个“外部工具”配置,运行带有'local build android'选项的phonegap实用程序和一个设置为'/ opt / local / bin:/ usr / bin的环境PATH变量: / bin'代表我的Mac。从那里开始,我安装了Eclipse CDT工具并使用其“启动组”功能从顶层项目运行外部工具,然后在特定于平台的项目上调用调试。
似乎运作得相当好。不幸的是,他们顶级项目没有“记住”启动组执行,所以我必须每次从Debug下拉列表中选择它。我将顶级项目转换为JavaScript作为测试,但它似乎没有帮助,项目属性中的“运行/调试设置”都显示为灰色。
答案 2 :(得分:0)
请在此处查看我的回答:Multiple Html files in PhoneGap Android project
为什么我使用Phonegap 3.0 CLI迁移到Netbeans。更适合我的工作流程。