一、环境安装

1、安装NodeJs

https://nodejs.org 直接去官网下载并按默认路径安装就可以了。

安装完成后在命令行:   (测试成功!)

$ npm

2、安装Cordova

命令行:$ npm install -g cordova

如果安装不成功,一般是网络原因, 安装成功后命令行:   $ cordova

(测试成功!)

PS:也可以安装cnpm,这样就容易装cordova

npm install -g cordova --registry https://registry.npm.taobao.org
npm install -g ionic --registry https://registry.npm.taobao.org

PPS:这种安装方式,默认安装的是最新版本的cordova,如果想要安装特定版本的cordova,比如说cordova4.1.1,输入以下命令:
         npm install -g cordova@4.1.1
         cordova的版本是和android的sdk的版本是有对应关系的

3、部署Android开发环境

Cordova是一种Hybrid开发,可以被部署到android,ios等多个手机平台。这里我们以android为目标平台。

接下来我们开始android平台下相关环境的部署。

这里我们安装AndroidStudio,可以访问 http://www.android-studio.org/

里边有国内的下载镜像。

PS:理论上,AndroidStudio可以不安装,但第一次使用Cordova或者遇到问题,用AndroidStudio容易调试

4、安装JDK

oracle官网 http://java.oracle.com/  (下不来的FQ~~)

或国内镜像 http://jdk.android-studio.org/

下载安装后,配置环境变量:http://www.cnblogs.com/yuzhongwusan/archive/2013/03/26/2982411.html

5、安装Android SDK

下载并安装AndroidStudio,http://developer.android.com/sdk/index.html

安装完成后配置sdk环境变量(cordova命令要用到):http://jingyan.baidu.com/article/f71d603757965b1ab641d12a.html

6、安装Ant

Ant是java平台下一个打包部署的工具,使用cordova命令的时候需要借助这个工具。

http://ant.apache.org/bindownload.cgi,下载zip压缩包,解压后配置环境变量:http://www.cnblogs.com/yuzhongwusan/archive/2013/03/26/2982411.html

二、项目打包

1、创建一个cordova项目
      在命令行中敲入以下命令:
      cordova create test com.example.test :其中第一个位置的test是指你的项目名,第二个位置的com.example.test是指你打包的apk的包名。

2、增加cordova平台
     进入你建立的项目目录test,在命令行中敲入以下命令:
      cordova platform add android

这里添加的平台是android的,你也可以添加其他的平台:
cordova platform add wp8       
cordova platform add windows 
cordova platform add amazon-fireos 
cordova platform add android
cordova platform add blackberry10
cordova platform add firefoxos\
当然如果你不想使用哪个平台,你可以把它删除掉:
cordova platform rm ios
cordova platform rm firefoxos
cordova platform rm windows
cordova platform rm wp8
cordova platform rm firefoxos
cordova platform rm android
你也可以通过命令查看都有哪些平台以及你已经安装了哪些平台:
cordova platforms ls

3、编译打包
       将你写的一些html、css、js文件放到你建的项目目录下的www文件下对应的位置:

然后在命令行下输入以下命令:
cordova build android
然后就是静静的等待编译。。

根据成功提示,在platforms\android\build\outputs\apk下为生成的WebApp安装包

三、在AndroidStudio中打开Cordova项目

1、打开AS,FILE-New-Import Project

2、选择刚刚编辑打包生成的Cordova项目中的platforms\android\build.gradle文件

四、遇到的问题

1、项目采用Framework7+RequeireJs单页面,按需加载,项目Js文件夹命名为View-Js,RequireJs无法正确找到文件路径,刚开始以为是requireJs与cordova的require方法冲突。

解决方案:文件夹中不允许包含-,将其改成下划线

cordova 打包工具的更多相关文章

  1. Cordova 打包 Android release app 过程详解

    Cordova 打包 Android release app 过程详解 时间 -- :: SegmentFault 原文 https://segmentfault.com/a/119000000517 ...

  2. 用Cordova打包Vue-vux项目

    技术搭建:vue + vux 首先推荐阅读这篇文章,写的已经很详细了:https://www.jianshu.com/p/25d797b983cd 此处记录下我按照这篇文章打包的时候报的一些错误,方便 ...

  3. cordova打包vue2(webpack)android、ios app

    使用cordova打包vue2(webpack)app for android ios1.vue项目通过vue-cli脚手架建立项目,使用webpack进行打包,下边是一整套命令. #npm 版本最好 ...

  4. 使用 Cordova 打包 app

    1.安装nodejs 2.安装 cordova npm install -g cordova 3.Cordova 打包成安卓APK需要用到ANT打包工具,首先配置好java环境: 下载安装Java J ...

  5. 细说前端自动化打包工具--webpack

    背景 记得2004年的时候,互联网开发就是做网页,那时也没有前端和后端的区分,有时一个网站就是一些纯静态的html,通过链接组织在一起.用过Dreamweaver的都知道,做网页就像用word编辑文档 ...

  6. Atitit.项目修改补丁打包工具 使用说明

    Atitit.项目修改补丁打包工具 使用说明 1.1. 打包工具已经在群里面.打包工具.bat1 1.2. 使用方法:放在项目主目录下,执行即可1 1.3. 打包工具的原理以及要打包的项目列表1 1. ...

  7. Webpack:前端资源模块化管理和打包工具

    一.介绍: Webpack 是当下最热门的前端资源模块化管理和打包工具.它可以将许多松散的模块按照依赖和规则打包成符合生 产环境部署的前端资源.还可以将按需加载的模块进行代码分隔,等到实际需要的时候再 ...

  8. 模块化管理工具兼打包工具 webpack

    webpack 是一个[模块化管理工具]兼[打包工具] 是一个工具(和seajs,requirejs管理前端模块的方式是不一样) 在webpack一个文件就是一个模块! seajs,requirejs ...

  9. Winform打包工具SetupFactory 9 的使用

    写了个WinForm的小程序..以前没打过包..只是直接把Bin里的东西复制出来使用..自己使用是足够.但是发给别人毕竟不太好看(不牛逼)..所以就想着打包.. Vs2012自带的有打包的功能..相信 ...

随机推荐

  1. 9.在idea中创建Maven项目

    1.新建maven WEB项目 打开-File-New-Project 点击NEXT 2.选择项目组,并给项目命名 3.选择maven路径 添加的配置为 archetypeCatalog=intern ...

  2. SQL Server 2008 复制到MySQL

    SQLServer2008正在配放订阅的时候是能够看到收撑订阅办事器为Oracle或者DB2的,可是复制到MySQL没无间接的界面操做. 颠末测试,通过MySQL的ODBC驱动,是能够实现将SQLSe ...

  3. [Angular] N things you might don't know about Angular Route

    Prevent Partail Page display: By using Resolver: @Injectable() export class MovieResolver implements ...

  4. 经验总结18--EF改动关系,多对多

    EF改动关系让我费事蛮多时间.能查的资料少,网上试了非常多方法都不正确. 最后还是自己研究出来了.在这里和大家分享下,有更好的方法也能够分享下. 首先说说我一般做改动功能时,前台传參数,后台使用对象接 ...

  5. linux下select,poll,epoll的使用与重点分析

    好久没用I/O复用了,感觉差点儿相同都快忘完了.记得当初刚学I/O复用的时候花了好多时间.可是因为那会不太爱写博客,导致花非常多时间搞明确的东西,依旧非常easy忘记.俗话说眼过千遍不如手过一遍,的确 ...

  6. 微信企业号开发:UserAgent

    userAgent 属性是一个仅仅读的字符串,声明了浏览器用于 HTTP 请求的用户代理头 的值.微信企业号的打开网页的userAgent又包括那些信息呢? 使用userAgent能够推断用户訪问的浏 ...

  7. Qt由pcm数据生成wav文件

    void AudioGrabber::saveWave(const QString &fileName, const QByteArray &raw, const QAudioForm ...

  8. ROS探索总结(十九)——怎样配置机器人的导航功能

    1.概述 ROS的二维导航功能包.简单来说.就是依据输入的里程计等传感器的信息流和机器人的全局位置,通过导航算法,计算得出安全可靠的机器人速度控制指令. 可是,怎样在特定的机器人上实现导航功能包的功能 ...

  9. pyhton 从web获取json数据 保存到本地然后再读取

    从web中获取json数据直接进行处理总认为太慢.主要是从web中获取获取数据的过程有点慢. 所以就在想 假设先利用空暇时间把json数据获取并保存到本地,然后再从本地文件里读取和操作.应该就要快非常 ...

  10. Qt中暂停线程的执行(主线程和工作线程共用一把锁,一旦主线程将它锁上,工作线程就无法运行了,这也是一个办法)

    在线程中定义一个信号量: QMutex pause; 把run()函数中循环执行的部分用信号量pause锁住:   void run()   {   while(1)   {   pause.lock ...