一、什么是cordova

Cordova提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头、麦克风等。
Cordova还提供了一组统一的JavaScript类库,以及为这些类库所用的设备相关的原生后台代码。
Cordova支持如下移动操作系统:iOS, Android,ubuntu phone os, Blackberry, Windows Phone, Palm WebOS, Bada 和 Symbian。

二、环境搭建

1、下载nodeJS,cordova是利用nodeJS进行管理,其中也包含了npm管理器

(什么是NPM:Nodejs自身提供了基本的模块,但是开发实际应用过程中仅仅依靠这些基本模块则还需要较多的工作。幸运的是,Nodejs库和框架为我们提供了帮助,让我们减少工作量。但是成百上千的库或者框架管理起来又很麻烦,有了NPM,可以很快的找到特定服务要使用的包,进行下载、安装以及管理已经安装的包。)

在命令行窗口确认安装完成:

2、配置ant环境,到官方主页下载新版(目前为Ant1.8.1)的ant,得到的是一个apache-ant-1.8.1-bin.zip的压缩包。将其解压到你的硬盘上,例如:C:\apache-ant-1.8.1。

window中设置ant环境变量:

ANT_HOME    C:/ apache-ant-1.8.1

path             C:/ apache-ant-1.8.1/bin

classpath      C:/apache-ant-1.8.1/lib

验证ant是否成功安装,可以进行如下操作:

依次选择:开始->运行->cmd,输入如下命令:ant

如果出现如下内容,说明安装成功:

Buildfile: build.xml does not exist!

Build failed

3、在windows上安装Cordova

在命令行窗口输入:

npm install -g cordova

安装完成,输入命令验证:

cordova -v

4、安装JDK

5、下载SDK,配置android开发环境(android studio/eclipse)

三、创建一个简单Cordova项目

创建一个MyApp工程

> cordova create myapp com.yourname.myapp MyApp     项目名 包名 类名

进入工程目录

> cd myapp

添加平台支持

> cordova platforms add ios 
> cordova platforms add android

> cordova platforms ls

添加插件

> cordova plugin add org.apache.cordova.device 
> cordova plugin add org.apache.cordova.console

> cordova plugin ls

编译代码

> cordova build android
在模拟器上运行(前提是创建好AVD)

> cordova emulate android
在浏览器运行

> cordova serve android
通过USB直接安装到真机

> cordova run android
 
 
常用命令

(1)create <directory> [<id> [<name>]] 
创建一个cordova工程,id为package名。

(2)platform [ls | list] 
列出该工程支持哪些平台

(3)platform add <platform> [<platform> ...] 
为工程添加一个或多个平台支持

(4)platform [rm | remove] <platform> [<platform> ...] 
删除该工程的某个平台支持

(5)platform [up | update] <platform> 
更新该工程某个平台的Cordova版本

(6)plugin [ls | list] 
列出该工程包含哪些插件

(7)plugin add <path-to-plugin> [<path-to-plugin> ...] 
为工程添加一个或多个插件

(8)plugin [rm | remove] <plugin-name> [<plugin-name> ...] 
从该工程中删除某个插件

(9)plugin search [<keyword1> <keyword2> ...] 
根据关键字从registry中搜索插件

(10)compile [platform...] 
编译指定平台的app包

(11)build [<platform> [<platform> [...]]] 
先做prepare(拷贝文件)后做compile

(12)emulate [<platform> [<platform> [...]]] 
启动模拟器运行应用

(13)serve [port] 
启动本地web服务来访问www,默认端口是8000 

 
目录结构

(1)目录一览:

引用
myApp/ 
|-- config.xml 
|-- hooks/ 
| | |-- before_xxx/ 
| | `-- after_xxx/ 
|-- merges/ 
| | |-- android/ 
| | `-- ios/ 
|-- platforms/ 
| |-- android/ 
| `-- ios/ 
|-- plugins/ 
| |-- org.apache.cordova.console/ 
| `-- org.apache.cordova.device/ 
|-- www/ 
| |-- css/ 
| |-- img/ 
` |-- js/ 
  `-- index.html

(2)config.xml 
cordova的配置文件

(3)hooks目录 
存放自定义cordova命令的脚本文件。每个project命令都可以定义before和after的Hook,比如:before_build、after_build。 
Hook可以采用任何编程语言来写,Cordova CLI采用的是Node.js,所以一般都是用它来写。

这里提供了3个常用的Hook脚本: 
http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/

(4)merges目录 
存放各个平台特殊的文件,会和www进行合并编译,相同的文件merges下的文件优先。

比如:

引用
merges/ 
|-- ios/ 
| `-- app.js 
|-- android/ 
| `-- android.js 
www/ 
`-- app.js

编译成iOS应用的话,包含merges/ios/app.js;而Android应用的话,包含www/app.js、merges/android/android.js

(5)platforms目录 
各个平台的原生代码工程,不要手动修改,因为在build的时候会被覆盖。

(6)plugins目录 
插件目录(cordova提供的原生API也是以插件的形式提供的)。

(7)www目录 
源代码目录,在cordova prepare的时候会被copy到各个平台工程的assets\www目录中。 
其中index.html为应用的入口文件。 

 

Cordova学习(一) 环境搭建的更多相关文章

  1. hive_学习_01_hive环境搭建(单机)

    一.前言 本文承接上一篇:hbase_学习_01_HBase环境搭建(单机),主要是搭建 hive 的单机环境 二.环境准备 1.说明 hive 的下载来源有: 官方版本:http://archive ...

  2. hbase_学习_01_HBase环境搭建(单机)

    一.前言 本文承接上一篇:hadoop_学习_02_Hadoop环境搭建(单机)  ,主要是搭建HBase的单机环境 二.环境准备 1.说明 hbase 的下载来源有: 官方版本:http://arc ...

  3. hadoop_学习_02_Hadoop环境搭建(单机)

    一.环境准备 1.说明 hadoop的下载来源有: 官方版本:http://archive.apache.org/dist/hadoop/ CDH版本:http://archive.cloudera. ...

  4. 从0开始学爬虫9之requests库的学习之环境搭建

    从0开始学爬虫9之requests库的学习之环境搭建 Requests库的环境搭建 环境:python2.7.9版本 参考文档:http://2.python-requests.org/zh_CN/l ...

  5. Ubuntu16.04深度学习基本环境搭建,tensorflow , keras , pytorch , cuda

    Ubuntu16.04深度学习基本环境搭建,tensorflow , keras , pytorch , cuda Ubuntu16.04安装 参考https://blog.csdn.net/flyy ...

  6. ubuntu 深度学习cuda环境搭建,docker-nvidia 2019-02

    ubuntu 深度学习cuda环境搭建 ubuntu系统版本 18.04 查看GPU型号(NVS 315 性能很差,比没有强) 首先最好有ssh服务,以下操作都是远程ssh执行 lspci | gre ...

  7. Python基础学习之环境搭建

    Python如今成为零基础编程爱好者的首选学习语言,这和Python语言自身的强大功能和简单易学是分不开的.今天我们将带领Python零基础的初学者完成入门的第一步——环境搭建.本文会先来区分几个在P ...

  8. 001-深度学习Pytorch环境搭建(Anaconda , PyCharm导入)

    001-深度学习Pytorch环境搭建(Anaconda , PyCharm导入) 在开始搭建之前我们先说一下本次主要安装的东西有哪些. anaconda 3:第三方包管理软件. 这个玩意可以看作是一 ...

  9. 人工智能之深度学习-初始环境搭建(安装Anaconda3和TensorFlow2步骤详解)

    前言: 本篇文章主要讲解的是在学习人工智能之深度学习时所学到的知识和需要的环境配置(安装Anaconda3和TensorFlow2步骤详解),以及个人的心得体会,汇集成本篇文章,作为自己深度学习的总结 ...

  10. 深度学习开发环境搭建教程(Mac篇)

    本文将指导你如何在自己的Mac上部署Theano + Keras的深度学习开发环境. 如果你的Mac不自带NVIDIA的独立显卡(例如15寸以下或者17年新款的Macbook.具体可以在"关 ...

随机推荐

  1. 移动端设置字体px转换rem的脚本

    (function (){ var _self = this; _self.width = 640;//设置默认最大宽度 _self.fontSize = 100;//默认字体大小 _self.wid ...

  2. 3d旋转

    <!DOCTYPE html><html lang="zh-cmn-Hans"><head><meta charset="utf ...

  3. 在VC++6.0开发中实现全屏显示

    全屏显示是一些应用软件程序必不可少的功能.比如在用VC++编辑工程源文件或编辑对话框等资源时,选择菜单“View\Full Screen”,即可进入全屏显示状态,按“Esc”键后会退出全屏显示状态. ...

  4. Windows添加和取消右键管理员权限

    亲测可用 新建文本文档,粘贴下列代码 Windows Registry Editor Version 5.00[HKEY_CLASSES_ROOT\*\shell\runas]@="管理员取 ...

  5. Notepad++进行php开发所必需的插件

    Notepad++进行php开发所必需的插件有那些呢? 1. Compare: 可以用来比较两个文件不同之处. 2. Explorer:文件浏览器插件,包含收藏夹.Session保存功能.可与NppE ...

  6. DataTable数据导出CSV文件

    public static void SaveAsExcel(DataTable dt1) { //System.Windows.Forms.SaveFileDialog sfd = new Syst ...

  7. mongodb 使用场景和不使用场景

    1.mongodb介绍 MongoDB (名称来自"humongous") 是一个可扩展的高性能,开源,模式自由,面向文档的数据库.它使用C++编写.MongoDB特点: a.面向 ...

  8. python之路:Day8-Socket编程进阶

    本节内容: 1.Socket语法及相 2.SocketServer实现多并发 Socket语法及相关    socket概念 socket本质上就是在两台网络互通的电脑之间,建立一个通道,两台电脑通过 ...

  9. <java基础学习>JAVA 对象和类

    Java is an Object-Oriented Language. As a language that has the Object Oriented feature, Java suppor ...

  10. 《数据结构》2.3单链表(single linked list)

    //单链表节点的定义 typedef struct node { datatype data; struct node *next; }LNode,*LinkList; //LNode是节点类型,Li ...