我刚刚第一次安装Phonegap,浏览了一下文档。让我困惑的是,一些文档使用命令“phonegap”和一些“cordova”。
Android平台指南:
$ cordova create hello com.example.hello "HelloWorld"
命令行接口指南告诉:
$ phonegap create hello com.example.hello HelloWorld
这两个命令之间是否存在差异(导致不同的文件和文件夹结构),或者它们只是同一事物的别名?
我刚刚第一次安装Phonegap,浏览了一下文档。让我困惑的是,一些文档使用命令“phonegap”和一些“cordova”。
Android平台指南:
$ cordova create hello com.example.hello "HelloWorld"
命令行接口指南告诉:
$ phonegap create hello com.example.hello HelloWorld
这两个命令之间是否存在差异(导致不同的文件和文件夹结构),或者它们只是同一事物的别名?
当前回答
This first choice might be a confusing one but it’s really very simple. PhoneGap is a product owned by Adobe which currently includes additional build services, and it may or may not eventually offer additional services and/or charge payments for use in the future. Cordova is owned and maintained by Apache, and will always be maintained as an open source project. Currently they both have a very similar API. I would recommend going with Cordova, unless you require the additional PhoneGap build services.
其他回答
从我所读到的(如果我错了,请纠正我):
Phonegap声称他们开始尝试做这个,但没有成功,所以他们把它交给了Apache软件基金会。
Apache用他们的厉害(Long live Apache)修复了它,开发了它,并使它变得非常棒。
现在Phonegap正试图维护和增强他们收回的副本,但仍在不断地填充它。
所以,在我看来,我想要的是一个可靠的、值得信赖的开发平台,由我可以信任的经验丰富的专业人士制作,而不是一个打补丁的子版本。所以我说我是Cordova的开发者而不是Phonegap的开发者。
Iv还读到,在第二次绝望的尝试中,Phonegap获得了人气,并控制了Apache的伟大作品,现在已经在Adobe的旗帜下出售。你知道Adobe,他们不做任何免费的事情,而且在维护软件生命周期方面非常糟糕,以至于他们的应用程序需要在你每次眨眼的时候执行更新,而且由于某种原因,他们的每个应用程序都是你预期的100倍大。
如果我没看错的话,我想这就是我的研究总结。
如果是真的,那就让我们放弃Phonegap的胡言乱语,继续留在科尔多瓦。
我发现这种差异迫使我在构建应用时混合使用phonegap和cordova cli命令:
“phonegap plugin add”不能正确处理命令行参数,而“cordova platform add”工作完美无缺
我使用的命令是:
'cordova plugin add https://github.com/crittercism/PhoneGap.git --variable IOS_APP_ID="[my_license_key]"
注意我使用的是phonegap 3.5
我还注意到cordova有一个Phonegap没有的“服务”命令。这个命令在端口8000上启动一个本地服务器。这对于在Chrome中运行应用程序和使用Ripple模拟器非常方便。
回答得晚了,但我认为这可能有用。
这两个cli之间有区别,phonegapi是一个封装cordova的命令。在创建的情况下,唯一的区别是一个覆盖默认应用程序
在其他一些情况下,差异要显著得多。例如,phonegap构建带有远程构建功能,而cordova构建只支持本地构建。
我发现PhoneGap的一个很大的限制是,AFAIK,你只能使用PhoneGap build服务构建一个发布版APK。在Cordova上你可以用Cordova build android——release。
以下是我发现的不同之处:
我将phonegap 3.3.0-0.18.0 CLI与cordova 3.3.0文档中描述的该CLI的功能进行比较。
“ls”是“cordova plugin”的选项,但不是“phonegap plugin”的选项。你必须用“list”代替。 例如:“phonegap插件列表” "serve"在"phonegap -help"中没有记录,但它确实存在,而且它确实有效。它不会找到和加载phonegap.js,所以页面永远不会完全加载,但它仍然提供了一些价值。我不确定这和科多瓦的行为是否不同。 “phonegap平台添加”在phonegap中不工作。您必须执行“phonegap构建”以添加对平台的支持。
注意,在phonegap中,建议的解决方案是使用cordova命令,您可能还会遇到一些令人困惑的错误消息。