我刚刚第一次安装了Phonegap,只浏览了文档。令我困惑的是,有些文档正在使用命令“phonegap”和一些“cordova”。
Android平台指南:
$ cordova create hello com.example.hello "HelloWorld"
命令行界面指南告诉:
$ phonegap create hello com.example.hello HelloWorld
这两个命令之间是否存在差异(导致不同的文件和文件夹结构),或者它们只是同一个别名?
答案 0 :(得分:180)
http://phonegap.com/blog/2012/03/19/phonegap-cordova-and-whate28099s-in-a-name/
我认为这个网址解释了你的需求。 Phonegap没有别的建立在Apache Cordova上。您可以将Apache Cordova视为为PhoneGap提供动力的引擎。随着时间的推移,PhoneGap发行版可能包含其他工具,这就是为什么它们在命令上有所不同但是它们做同样的事情。
编辑:额外信息添加为关于命令差异以及什么手机带可以做什么而apache cordova不能或反之亦然
PhoneGap的第一个命令行选项
http://docs.phonegap.com/en/edge/guide_cli_index.md.html
Apache Cordova选项 http://cordova.apache.org/docs/en/3.0.0/guide_cli_index.md.html#The%20Command-line%20Interface
因为几乎大多数命令都是相似的。差异很小 (注意:Codebase没有区别)
Adobe可以为PhoneGap添加其他功能,以便不在其中 Cordova,Eg:远程构建应用程序,以满足您的需求 帐户https://build.phonegap.com
虽然对于本地版本,phonegap cli使用cordova cli(链接检查: https://github.com/phonegap/phonegap-cli/blob/master/lib/phonegap/util/platform.js)
平台环境名称。 映射:
'local'=>科尔多瓦-CLI
'remote'=>的PhoneGap /构建
同样来自以下存储库: 需要cordova的模块是:
build
create
install
local install
local plugin add , list , remove
run
mode
platform update
run
哪个不包括cordova:
remote build
remote install
remote login,logout
remote run
serve
答案 1 :(得分:78)
迟到的答案,但我认为这可能有用。
两个cli之间存在差异,phonegap
是一个封装cordova
的命令。在create
案例中,唯一的区别是an overriden default app
在其他一些情况下,差异更为显着。例如,phonegap build
附带remote build functionality,而cordova build
仅支持本地版本。
我发现PhoneGap的一大限制是,AFAIK,您只能使用PhoneGap Build服务构建发布APK。在Cordova上,您可以使用cordova build android --release
构建。
答案 2 :(得分:23)
从我读过的内容(如果我错了,请纠正我):
Phonegap声称他们开始尝试制作但不能,所以他们将其传递给Apache软件基金会。
Apache非常棒(Apache万岁)修复它,开发它,并使它非常棒。
现在,Phonegap正试图维护和增强他们收回的副本,但不断填补它。
所以,根据我的想法,我想要一个坚实而值得信赖的开发平台,由经验丰富的专业人士制作,我可以信任,而不是修补后的子版本。因此我说我是Cordova开发人员而不是Phonegap开发人员。
Iv还读到,在第二次绝望的尝试中获得普及并控制Apache的伟大作品,Phonegap现已在Adobe旗下销售。你知道Adobe,他们是免费做任何事情的人,他们在维护软件生命周期方面非常糟糕,他们的应用程序每次眨眼时都需要执行更新,并且出于某种原因,他们的每个应用程序的大小都是你的100倍期待。
如果我没有错误地阅读,我想这就是我研究的总结。
如果是真的,那么让所有人放弃整个Phonegap废话,只需坚持使用Cordova。
答案 3 :(得分:13)
以下是我发现的差异:
我正在将phonegap 3.3.0-0.18.0 CLI与该CLI的cordova 3.3.0文档中描述的功能进行比较。
" LS"是" cordova插件的选项"但不适用于" phonegap插件"。你必须使用" list"代替。 例如:" phonegap插件列表"
"服务"没有记录在" phonegap -help"但它确实存在,它确实有效。它不会找到并加载phonegap.js,因此页面永远不会完全加载,但它仍然提供了一些价值。我不确定这是否与行为线索不同。
" phonegap平台添加"在phonegap中不起作用。你必须做一个" phonegap build"添加对平台的支持。
请注意,您可能还会在phonegap中遇到一些令人困惑的错误消息,其中建议的解决方案是指使用cordova命令。
答案 4 :(得分:6)
我也注意到cordova有一个“服务”命令,Phonegap没有。此命令在端口8000上启动本地服务器。这对于在Chrome中运行应用程序并使用Ripple模拟器非常方便。
答案 5 :(得分:5)
答案 6 :(得分:4)
这个第一选择可能是令人困惑的,但它真的很简单。 PhoneGap是Adobe拥有的产品,目前包括其他构建服务,它可能会或可能不会最终提供额外的服务和/或收费以供将来使用。 Cordova由Apache拥有和维护,并将始终作为开源项目进行维护。目前他们都有一个非常相似的API。我建议您使用Cordova,除非您需要额外的PhoneGap构建服务。
答案 7 :(得分:1)
上面,Abhishek提到了两个URL中指定的命令行差异:
的PhoneGap: http://docs.phonegap.com/en/edge/guide_cli_index.md.html
科尔多瓦: http://cordova.apache.org/docs/en/3.0.0/guide_cli_index.md.html#The%20Command-line%20Interface
有一点需要指出的是,截至本文,手机屏幕看起来与cordova几乎相同,可能不是命令行选项差异的准确图像。因此,我在我的系统上安装了两个,所以我可以看看差异。
这些只是其中的一小部分。希望他们有时会更加同步。如果有人有更好的信息,请告诉我。
我想我的观点是,通常提到的phonegap CLI文档并不适用于phonegap CLI,而是针对cordova CLI。请告诉我,如果我遗失了什么。感谢。
答案 8 :(得分:1)
我发现这种差异迫使我在构建我的应用时使用了一个混合的phonegap和cordova cli命令:
'phonegap插件添加'无法正确处理命令行参数,而'cordova platform add'可以正常运行
我使用的命令是:
'cordova plugin add https://github.com/crittercism/PhoneGap.git --variable IOS_APP_ID="[my_license_key]"
注意我正在使用phonegap 3.5
答案 9 :(得分:0)
如今,phonegap和cordova已归Adobe所有。只是名字对话是不同的。对于安装插件功能,我们也应该对phonegap和cordova使用相同的命令。
命令:cordova插件添加cordova-plugin-photo-library
在这里