Cordova入门-概述-架构

转载 2018年04月16日 15:12:12

概述

Apache Cordova是一个开源的移动开发框架。允许你用标准的web技术-HTML5,CSS3和JavaScript做跨平台开发。 应用在每个平台的具体执行被封装了起来,并依靠符合标准的API绑定去访问每个设备的功能,比如说:传感器、数据、网络状态等。

使用Apache Cordova的人群:

  • 移动应用开发者,想扩展一个应用的使用平台,而不通过每个平台的语言和工具集重新实现。

  • web开发者,想包装部署自己的web App将其分发到各个应用商店门户。

  • 移动应用开发者,有兴趣混合原生应用组建和一个WebView(一个特别的浏览器窗口) 可以接触设备A级PI,或者你想开发一个原生和WebView组件之间的插件接口。

架构

这是cordova应用程序的几个组成部分。下面这幅图是cordova应用架构的高级视图。


WebView

Cordova启用的WebView可以给应用提供完整用户访问界面。在一些平台中,他也可以作为一个组件给大的、混合应用,这些应用混合和Webview和原生的应用组件。(查看Embedding WebViews获得详细内容。)

Web App

这是你应用程序代码存在的地方。应用的实现是通过web页面,默认的本地文件名称是是index.html,这个本地文件应用CSS,JavaScript,图片,媒体文件和其他运行需要的资源。应用执行在原生应用包装的WebView中,这个原生应用是你分发到app stores中的。

这个容器中包含一个非常重要文件- config.xml 文件他提供App的重要的信息和特定的参数用来影响App的工作,比如说是否响应方向的变动。

插件

插件是Cordova生态系统的重要组成部分。他提供了Cordova和原生组件相互通信的接口并绑定到了标准的设备API上。这使你能够通过JavaScript调用原生代码.

Apache Cordova项目维护着一组插件叫做核心插件。这些核心插件可以让你的应用程序访问设备功能,比如:电源,相机,联系人等。

除了核心插件,这里还有一些第三方插件他们提供了一些附加功能,但这些功能不一定在每个平台都能用。你可以搜索Cordova插件使用插件搜索或者npm。你也可以开发自己的插件,像 插件开发指南描述的那样。插件是必要的,例如Cordova和自定义原生组件之间通信。

注意:当你创建一个Cordova项目它不存在任何插件。这是新的默认行为。任何你需要的组件,哪怕是核心组件,你也必须明确添加。

Cordova不提供任何UI部件和MV框架。Cordova只提供运行环境。如果你想使用UI部件或者MV框架,你需要选择他们并包含在你的应用程序中。

开发工作流

Cordova提供两个基本的工作流用来创建移动App。虽然你经常使用两种不同工作流完成同样的任务,但是他们之间是有各自优势的:

  • 跨平台(CLI)的工作流:如果你想你的App运行在尽可能多的移动操作系统,那么就使用这个工作流,你只需要很少的特定平台开发。 这个工作流围绕这'cordova'CLI(命令行)。CLI是一个高级别的工具,他允许一次构建多个平台的项目,抽象了很多功能性的低级别shell脚本。CLI把公用的web资源复制到每个移动平台的子目录,根据每个平台做必要的配置变化,运行构建脚本生成2进制文件。CLI统一也提供通用接口,将插件应用在app中。如果要入门可以按照 创建你的第一个App指南中的步骤来 。除非你有一个以平台为中心的工作流,否则建议你使用跨平台工作流。

  • 平台为中心的工作流:如果你专注于构建单独平台的App或者需要需要在底层修改它那么就使用这个工作流吧。你需要使用这种方法,如果你需要你的App混合原生组件和基于Web的Cordova组件, 正如 嵌入WebView讨论的。作为一个经验法则,如果你需要修改SDK中的项目那么使用这个工作流。 这个工作流依靠一组低级别的shell脚本,他们是给每个支持平台量身定做的,还有一个单独的Plugman工具允许你添加插件。 虽然你可以使用这个工作流构建跨平台应用,但通常这是非常困难的,因为缺乏高基本的工具,意思就是是单独的构建生命周期并且插件修改需要对每一个平台进行。

当你第一次开始,跨平台工作流创建App可能是最容易的,像创建你的第一个App中描述的那样。然后,你可以切换到以平台为中心的工作流,如果你需要更好的控制SDK提供的功能。

注意: 一但你从以CLI为中心的工作流切换到一个围绕特定平台SDK和shell工具的工作流中,你就不可能返回了。 CLI维护着一套通用的跨平台源代码,每个特定平台构建都需要使用他而不是特定平台的源码。为了保护你对特定平台资产的修改,你需要切换到以平台为中心的脚本工具,他忽略跨平台的源码,转而依靠特定平台的源码。

安装Cordova

安装Cordova会因你依靠的工作流不同而不同:

在安装完Cordova之后,建议你查看平台开发部分来进行移动平台开发。 同时建议你查看隐私指南 和 安全指南.

文章来源于http://cordova.axuer.com/docs/zh-cn/latest/guide/overview/index.html


联系我们

QQ:250187715 
QQ群:390736068



跨平台框架Cordova概述

跨平台开发利器Cordova(或Phonegap)简要介绍。
  • zythy
  • zythy
  • 2014-03-22 09:55:32
  • 10261

BLE 4.0 概述

蓝牙4.0 (PS:本篇是转载的文章,通过问答的形式从蓝牙的概念到一些具体应用做了简单概述,对于新手来说,其中会有很多地方不明白,那就让我们从基础开始吧,详细学习内容,请看下篇分解) 1. 问:什么...
  • yuanchengfly
  • yuanchengfly
  • 2016-12-01 15:34:34
  • 449

cordova详解及介绍

一、Cordova 核心java类说明   CordovaActivity:Cordova Activity入口,已实现PluginManager、WebView的相关初始化工作, 只需继...
  • a940659387
  • a940659387
  • 2015-11-04 16:05:42
  • 2282

三层架构概述

三层架构概述           三层架构——3-tier architecture):通常意义上的三层架构就是将整个业务应用划分为:界面层(UserInterface layer)、业务逻辑层(...
  • nangeali
  • nangeali
  • 2016-01-17 17:51:51
  • 1466

ionic + angularJs + cordova入门教程一

1. 安装ionicnpm install -g ionic cordova说明:ionic使用npm管理,同时依赖于cordova,所以如果全新入坑,先要安装nodejs,具体百度。2. 创建工程i...
  • chemmuxin1993
  • chemmuxin1993
  • 2016-11-24 10:20:24
  • 734

Cordova入门课程

Cordova只是一个Webview的架子,只提供给你能够调用Native API的接口,在UI方面他不会管你页面是什么样子,也不会提供给你任何UI方面的功能,所以UI方面还要借助于jQuery Mo...
  • u013628152
  • u013628152
  • 2015-04-10 17:12:08
  • 3260

Android平台基本架构及Dalvik概述

对于Android开发,小编觉得仅仅照着视频或者照着Android疯狂讲义上的例子照搬照抄是不够的,了解、熟悉Android平台的架构及基本原理,相关基本要素的运行机制是极为重要的,这将为从事andr...
  • sjm19901003
  • sjm19901003
  • 2015-07-18 22:12:35
  • 850

zookeeper入门系列-概述

zookeeper可谓是目前使用最广泛的分布式组件了。其功能和职责单一但却非常重要。 在现今这个年代,介绍zookeeper的书和文章可谓多如牛毛,本人不才,在这边试图通过自己的理解来介绍zookee...
  • liweisnake
  • liweisnake
  • 2017-04-01 10:44:59
  • 5260

ASP.NET架构简介

引言:在大多数介绍Asp.Net的书籍,发现大多数作者都是站在一个比较高的层次上讲解Asp.Net。他们耐心,细致地告诉你如何一步步拖放控件,设置控件属性,编写后台代码,以现实某个特定的功能。这种做法...
  • ly9662
  • ly9662
  • 2009-01-09 11:52:00
  • 3806

Cordova入门

  • 2015年11月12日 20:24
  • 134KB
  • 下载
收藏助手
不良信息举报
您举报文章:Cordova入门-概述-架构
举报原因:
原因补充:

(最多只允许输入30个字)