cordova

Cordova+Ionic+Angularjs开发研究之Cordova

Cordova

概念

Cordova是Apache的一个开源移动端开发框架。可以使用标准的web技术,比如HTML5、CSS3和JavaScript,用于跨平台开发。应用运行在每个平台的特有封装包内,并且依赖于标准的兼容API库来访问每个设备的功能,比如传感器,数据存储,网络状态等。

适用情况如下:

  • 希望跨平台开发的移动开发者,而不想重新进行每个平台语言的开发和配置相关的工具
  • 想要为不同的app store部署不同的包的web APP的web开发者
  • 对混合开发感兴趣的移动端开发者(原生APP嵌入网页,可以访问设备API),或者开发介于原生和网页的组件的插件接口

架构

cordova架构

WebView

Cordova中的WebView对应用提供全部的用户接口。在一些平台中,也会是一个庞大的组件,或者混合了WebView和原生应用组件的混合应用。

Web App

Web App 是应用程序代码所在。应用本身作为一个网页实现,默认为本地文件index.html,这个文件引用了CSS,JavaScript,图片,多媒体文件,或者其他的运行需要的资源文件。App运行在所发布的原生应用包的一个WebView中。

这个容器中包含一个非常关键的文件config.xml,它提供了APP的相关信息,并且指定了应用运行的所需参数,比如对于屏幕方向变化的响应。

插件

插件是cordova系统的一个组成部分。他们向cordova和原生组件提供了交互的绑定的标准设备API的接口。这就使得可以使用JavaScript调用本地代码。

Apache Cordova工程包含了一系列核心插件集合。这些插件提供应用访问设备功能,比如电源、相机、通讯录等等。

除了核心插件之外,还有一些第三方插件,用来提供访问其他非全平台的设备特征。可以使用plugin search或者npm来搜索一些Cordova插件。也可以自己开发插件。插件是非常必要的,比如,Cordova和本地自定义组件的交互。

  • 注意:
    当创建一个Cordova工程时,它并不包含任何的插件。这个是新的默认行为。任何想要的插件,即使是核心插件,都必须显式添加。

Cordova并没有提供任何的UI部件或者MV框架。Cordova只是提供运行时的可执行的东西。如果想使用一些UI部件或者MV框架,需要选择这些并且把他们加入到应用之中。

开发方式

Cordova提供了两种基本的工作流程来创建一个移动App. 可以使用下面的任何一种来创建APP,每种都有一些优势:

  • Cross-platform (CLI) workflow(跨平台工作流(命令行接口)):

如果想要App运行在很多不同的应用操作系统上,指定平台的开发只有很小的需要。这个工作流围绕cordova 命令行为中心。CLI是一个高度集成的工具,可以用来针对多个平台编译工程,包含了很多低级的壳脚本。CLI复制了web assets的公共集合到每个平台的子文件夹中,对每个平台进行任何想需要的配置改变,运行编译脚本来生成应用的二进制文件。CLI还提供了使用应用插件的公共接口。除非明确需要以平台为中心的工作流,建议使用跨平台工作流

  • Platform-centered workflow:

如果想要编译单一的平台App或者需要稍微改动,可以使用这个流程。使用这个方法,例如,如果想要混合自定义的本地组件和基于web的Cordova组件。使用这个方法来修改SDK中的工程。这个工作流依赖于一系列的低水平的每个平台特有的壳脚本,和一个可以使用插件的独立的Plugman 工具。如果使用这个方法来构建跨平台APP,将会变得非常困难,因为缺少高度集成的工具。

初步接触,跨平台工作流比较简单。

注意:一旦使用了基于CLI工作流的方式来指定平台的SDK和壳工具,就不可逆转了。CLI包含了一系列跨平台源码的集合,每次编译使用这些跨平台源码。为了保护对assets文件夹中任何的修改,需要选择平台为中心的壳工具,这个工具忽略了跨平台代码,并且以指定平台的源代码替代。

安装Cordova

不同的工作流程安装方式不同:

  • Cross-platform workflow: 参见创建APP
  • Platform-centered workflow

在安装Cordova之后,建议重新看一下Develop for Platforms 一节,关于移动平台开发的。建议复习一下 Privacy Guide 和 Security Guide章节

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值