Cordova历史发展
- ・2009年 通过iPhoneDevCamp之后,加拿大Nitobi开发了PhoneGap
- ・2011年 7月28日PhoneGap 1.0.0发布
- ・2011年 10月Adobe收购了Nitobi,并把PhoneGap的核心代码codebase捐给了Apache基金会,但保留了PhoneGap的商标所有权
- ・2011年 Apache最开始孵化这项目时用的名是Apache Callback(PhoneGap 1.1.0)
- ・2012年 PhoneGap更新到1.4版本后,用Nitobi旧址的街道名Cordova重新命名了这个项目,更广的用户和贡献者、管理透明、更好的文档;但是也产生了品牌歧义(Phonegap、Cordova)
http://en.wikipedia.org/wiki/PhoneGap
所以,可以把PhoneGap理解为Cordova的一个distribution,但它或多或少的和Cordova有所不同,当然很多不同也是因为要支持PhoneGap Build的。PhoneGap和Cordova的关系就如同Safari和WebKit的关系。
PhoneGap is a distribution of Apache Cordova.
前提版本:
引用
#cordova -v
3.4.1-0.1.0
#phonegap -v
3.4.0-0.19.21
(1)CLI
从以下的依赖关系可以看出PhoneGap实际上内部就是使用了Cordova。
引用
phonegap@4.2.0-0.24.2
├── pluralize@0.0.4
├── colors@0.6.0-1
├── semver@1.1.0
├── minimist@0.1.0
├── qrcode-terminal@0.9.4
├── shelljs@0.1.4
├── prompt@0.2.11 (revalidator@0.1.8, pkginfo@0.3.0, read@1.0.5, winston@0.6.
2, utile@0.2.1)
├── phonegap-build@0.9.1 (qrcode-terminal@0.8.0, optimist@0.3.7, shelljs@0.0.
9, phonegap-build-api@0.3.3)
├── connect-phonegap@0.14.8 (home-dir@0.1.2, connect-inject@0.3.2, ip@0.3.1,
ncp@0.6.0, findit@2.0.0, shelljs@0.2.6, request-progress@0.3.1, http-proxy@1.8.1
, useragent@2.0.8, gaze@0.4.3, tar@0.1.19, node-static@0.7.0, request@2.33.0, ar
chiver@0.10.1, localtunnel@1.3.0, connect@2.12.0, socket.io@1.0.4)
└── cordova@4.2.0 (underscore@1.7.0, q@1.0.1, nopt@3.0.1, cordova-lib@4.2.0)
查看命令的说明:
引用
#phonegap help
#cordova help
官方说明:
https://github.com/apache/cordova-cli
https://github.com/phonegap/phonegap-cli
最常用的命令都是相似的,Adobe给PhoneGap添加了一些Cordova没有的特性,比如remote build。
1)create命令
引用
E:\projects>cordova create c1
Creating a new cordova project with name "HelloCordova" and id "io.cordova.hellocordova" at location "E:\projects\c1"
引用
E:\projects>phonegap create p1
[phonegap] the options E:\projects\p1 com.phonegap.helloworld HelloWorld
[phonegap] created project at E:\projects\p1
phonegap cli命令中不能指定name和id,需要手动修改config.xml
参考:
https://github.com/phonegap/phonegap-cli/issues/263
2)build命令
phonegap build 统一了Cordova的以下命令:
- cordova platform add
- cordova prepare
- cordova compile
3)serve命令
- phonegap serve不需要添加平台直接使用,默认端口3000
- cordova serve需要添加平台后使用,默认端口8000
4)local/remote命令
“phonegap local *”
- build <platform> build a specific platform
- install <platform> install a specific platform
- run <platform> build and install a specific platform
- plugin <command> add, remove, and list plugins
“phonegap remote *”
- login login to PhoneGap/Build
- logout logout of PhoneGap/Build
- build <platform> build a specific platform
- install <platform> install a specific platform
- run <platform> build and install a specific platform
cordova emulate 等价于 phonegap local run。
cordova cli更像是Phonegap的local build。
https://github.com/phonegap/phonegap-cli/blob/master/lib/phonegap/util/platform.js
'local' => cordova-cli
'remote' => PhoneGap/Build
phonegap的project命令都会判断是否该工程下有.cordova文件夹。
Cordova判断的是www platforms config.xml
(2)Project
1)www/spec
jasmine的测试代码
2)www/res
phonegap build支持icon和splash
3)config.xml
文件位置
phonegap: /www/config.xml
cordova: /config.xml
***cordova也支持读取www下的config.xml
文件内容:
<icon src="" />
<gap:splash src="" />
<gap:plugin name="org.apache.cordova.camera" />
4)index.html
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="phonegap.js"></script>
cordova.js 和 phonegap.js的内容完全是一样的,而且phonegap的native工程里也有cordova.js。
(3)Plugin
phonegap plugin add 是用于phonegap local build的,phonegap remote build的plugin需要在config.xml中添加,互不相干。
(4)其他
- Phonegap独有功能:Phonegap Build、Phonegap Enterprise、Phonegap Developer App等。
- Phonegap使用Cordova,但是各自管理版本,一般Cordova先发布,Phonegap会随后才支持新版。
- Phonegap Build里只能使用Phonegap的插件,而Cordova可以导入任意插件。
参考:
http://blog.tiger-workshop.com/difference-between-phonegap-and-cordova/
分享到:
相关推荐
Font Awesome图标字体库提供可缩放矢量图标,它可以被定制大小、颜色、阴影以及任何可以用CSS的样式
介绍了physical design的floorplanning问题
数学建模培训资料 数学建模实战题目真题答案解析解题过程&论文报告 最低生活保障问题的探索 共20页.pdf
变更用水性质定额申请表.xls
从官网上下载下来,作为资源存储,方便安装,此资源为windows版本
嗨玩旅游网站-JAVA-基于springboot嗨玩旅游网站设计与实现(毕业论文+PPT)
【资源说明】 本科毕业设计 基于Python中国知网(cnki)爬虫及数据可视化详细文档+全部资料.zip 【备注】 1、该项目是个人高分项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 3、本项目适合计算机相关专业(人工智能、通信工程、自动化、电子信息、物联网等)的在校学生、老师或者企业员工下载使用,也可作为毕业设计、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 4、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!
api代码
【作品名称】:基于 Java 实现的24点卡牌游戏【课程设计】 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【项目介绍】: Java小游戏--24点卡牌游戏 将扑克牌(除大小王)随机打乱,每次出现4张卡牌,每张卡牌使用一次,13个回合。 A代表1,J代表11,Q代表12,K代表13。 可2-4人局域网同时在线对战,100秒倒计时结束前回答正确可获得积分,先回答的可获4分,后回答的分数依次递减。 实时显示玩家排名。 【资源声明】:本资源作为“参考资料”而不是“定制需求”,代码只能作为参考,不能完全复制照搬。需要有一定的基础看懂代码,自行调试代码并解决报错,能自行添加功能修改代码。
用 Python 实现的可扩展布隆过滤器皮布卢姆pybloom是一个包含 Bloom Filter 数据结构以及可扩展 Bloom Filter 实现的模块,如下所述P. Almeida、C.Baquero、N. Preguiça、D. Hutchison,可扩展布隆过滤器,(GLOBECOM 2007),IEEE,2007。如果您了解需要提前留出多少位来存储整个集合,那么布隆过滤器就是您的不二之选。可扩展布隆过滤器允许您的布隆过滤器位根据误报概率和大小进行增长。当过滤器达到容量上限时,即为“满”M * ((ln 2 ^ 2) / abs(ln p)),其中 M 是位数,p 是误报概率。当达到容量上限时,将创建一个比上一个过滤器大得多的新过滤器,其误报概率更小,哈希函数数量更多。>>> from pybloom import BloomFilter>>> f = BloomFilter(capacity=1000, error_rate=0.001)>>> [f.add(x) for x in range(10)][False, False, False,
计算机学院宿舍美化大赛.rar
基于java的运动器械购物商城设计与实现.docx
内容概要:文章介绍了针对“卓越工程师教育培养计划”,结合PBL和CDIO工程教育理念,对材料成型及控制工程专业课程设计的实践教学改革进行探索。首先在命题设计上依托企业实践项目,确保设计内容与生产实际紧密结合,具有较强的创新性和实用性。在过程管理中,采用分组合作和面向实际问题导向的教学方法,提升学生的工程素养和创新思维。通过课程设计的成绩考核,结合校内外导师的共同评价,客观全面衡量学生的学习成果。指导教师发挥了组织、支持和引导等多方面的角色作用。 适合人群:高等院校材料成型及控制工程专业学生和教学管理人员;工程教育领域的研究人员。 使用场景及目标:旨在提升工科学生的工程实践能力和创新能力,使其具备解决复杂实际工程问题的能力。通过改革教学内容和方法,改善传统课程设计中存在的不足,培养出高素质的技术人才。 其他说明:改革措施在实际运行中取得了较好的教学效果,提高了学生的就业竞争力,但仍存在一些不足之处需要在未来进行完善。
设计模式学习
C的两数相加求和的程序代码
Viper是一个基于Anno微服务引擎开发的Dashboard示例项目。Anno底层通讯采用grpc、thrift
本教程播放列表涵盖了 Python 中的数据结构和算法。每个教程都有数据结构或算法背后的理论、BIG O 复杂性分析和可供练习的练习。使用 Python 的数据结构和算法本教程涵盖了 Python 中的数据结构和算法。每个教程都包含数据结构或算法背后的理论、BIG O 复杂度分析以及可供练习的练习。要观看视频,您可以访问播放列表https://www.youtube.com/playlist?list=PLeo1K3hjS3uu_n_a__MI_KktGTLYopZ12订阅 codebasics youtube 频道https://www.youtube.com/c/codebasics
python入门——安装Python软件包
就业去向信息-JAVA-基于微信小程序高校毕业生实习及就业去向信息管理系统(毕业论文+PPT)
基于java的学费管理系统设计与实现.docx