什么是 cordova

cordova 是由 Apache 基金会支持的,使用 HTML5 + CSS3 + JS 来构建多平台 APP 程序的开发框架。其支持调用手机系统(Android、IOS、Windows phone)原生 API,它可以将你写的 Web 程序包裹进原生的 APP 壳中,也就是我们常说的 Hybrid APP (混合应用)。本文是一个前端开发者如何从 0 开始结合 Vue 来构建一个简单的 APP.

第一步,安装 cordova

安装 cordova

cordova 提供一个可以全局安装的脚手架工具,我们使用 npm 来安装,你的电脑还没有 npm 的话,需要先安装 node,node 本身自带 npm 包管理器,安装好 node 之后,我们打开命令行程序,输入以下命令,全局安装 cordova:

npm install -g cordova

下载完之后,输入 cordova -v 查看是否成功安装,出现相应的版本号则成功安装。

创建 cordova 程序

安装好之后,我们来新建一个 cordova 应用,在命令行输入以下命令新建:

cordova create learn-cordova

其会在当前目录下生成以下项目结构:

image

其中,我们重点关注 www 和 platforms 目录,我们写的 HTML/CSS/JS 代码就放在这个目录下面,现在这个目录下面已经有 cordova 为我们提供的示例项目代码。

platforms 是用来存放我们为相应的系统平台打包的运行源码,它现在是空的,我们依次执行以下命令来添加相应的平台:

cordova platform add android --save

cordova platform add ios --save

cordova platform add browser --save

添加完成之后,我们可以在 platforms 文件夹下面看到 android 和 ios 文件夹。我们可以使用下面这行命令来查看我们已经添加的平台和可以添加的全部平台:

cordova platform

添加完平台之后,我们可以使用 cordova run < platform > 来运行相应平台的代码,作为前端开发者,我们可以首先在浏览器里面跑起来我们的项目:cordova run browser (前提是你前面添加了 browser 平台),默认情况下,它会在 8000 端口打开项目:

image

如果你想查看它在安卓平台下的效果,则需要安装配置 Android SDK 环境,包括 Java JDK 的安装和环境变量配置, Android SDK 的安装和环境变量配置。这个过程可以通过 Android studio 来更高效地安装配置,当然,如果你的项目不涉及调用原生 API 的话,则可以直接下载 SDK Manager 管理工具来下载,进去依次点击 "Android SDK 工具",在下拉菜单中选择 "SDK Tools", 然后在表格中选择相应的平台所需的 SDK 包,建议直接下载 zip,下载完之后,在环境变量中配置(具体过程可以百度,很简单)。

配置完成之后,在刚下载好的 SDK manager 中打开 SDK Manager.exe 文件,在打开的界面中下载相应 API 级别的 SDK (推荐安装 Android 8.0 级别)就可以了,其中 Tools 下面的前三项必须安装,需要注意的是,这些 SDK 都比较大,准备好硬盘空间。

一切环境配置好之后,就可以通过 cordova run android 来调试你的应用在 Android 系统下的表现了。

当然,你想打包出来 apk 可安装文件的话,也可以通过一行命令解决:

cordova build android

打包成功之后的安装包可以在 "platforms → android → app → build → outputs → apk → debug" 下面找到。

以上就是一个简单 APP 的打包过程。

如何打包 Vue 项目

如果我们已经编写好了 Vue 项目,想把 Vue-cli 项目打包成一个 APP,该怎么做呢?很简单,把你的 Vue 项目文件夹移到和 cordova 项目同一级的位置(这不是必须,主要是好管理),如下:

image

放好之后,我们需要修改 Vue 项目的打包配置文件:

config - index.js:

image

build - utils.js

image

其主要目的是将 Vue 项目的打包目录设置我们我们 cordova 项目的 www 项目之下。

完成之后,在 vue 项目目录下运行 npm run build 打包 vue 项目,完成之后,我们会发现 cordova 项目 www 文件夹下出现了我们打包出来的 dist 文件夹和 index.html 入口文件。

我们回到 cordova 项目目录,在其下执行 cordova build <platform name> 就可以打包出 vue 项目了。

以上就是使用 cordova 项目构建 APP 的基本过程,当然使用 cordova 的原因在于我们可以通过添加插件来拥有 Web 开发不曾拥有的原生功能体验,这些,通过学习多多尝试。

作者:蓝线
链接:https://www.jianshu.com/p/2e9bebb73d37
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

cordova + Vue 开发 APP 上手指南的更多相关文章

  1. hybrid cordova+vue开发APP(一) 环境搭建

    没有选择react-navite,而选择cordova+vue2.x,是因为react-navite有学习成本,并且cordova+vue2.x程序员 可以直接上手,性能上可以满足需求,成本低,开发速 ...

  2. ionic+cordova 学习开发App(一)

    一.项目所需环境 (一)jdk 1.jdk的安装,必须同时包含Java 和javac [一般安装包中都包含有,可以确定下] (二)node.js 和NPM 1.大多插件和辅助工具都运行在NPm平台上. ...

  3. Cordova+vue 混合app开发(一)创建Cordova项目

    简介: Cordova包装你的HTML/JavaScript app到原生app容器中,可以让你访问每个平台设备的功能.这些功能通过统一的JavaScript API提供,让你轻松的编写一组代码运行在 ...

  4. Vue+cordova开发App

    Vue+cordova开发App https://www.imooc.com/article/70062

  5. Cordova 开发 App

    Cordova 是一个开源的移动开发框架.允许你用标准的 Web 技术——HTML5,CSS3 和 JavaScript 做跨平台开发.应用在每个平台的具体执行被封装了起来,并依靠符合标准的 API ...

  6. Cordova+Vue快速搭建Hybrid App

    前言 最近项目迭代需要开发一个app,由于项目组其他系统前端技术栈都是Vue,所以自己在需求评估的时候就初步敲定了Cordova+Vue的前端架构,后来查阅了不少资料,也掉了不少坑,这里总结一下,也算 ...

  7. Cordova+Vue构建Hybrid APP简易实操

    当下APP市场,因为Native APP开发成本高,Web APP不稳定,混合开发APP大行其道,成为越来越多开发者的首选.Hybrid APP开发框架也比较多,Weex.Ionic.PhoneGap ...

  8. 用vue快速开发app的脚手架工具

    前言 多页面应用于结构较于简单的页面,因为简答的页面使用router又过于麻烦.本脚手架出于这样的场景被开发出来. 使用脚手架搭配Hbuilder也同样可以快速使用vue开发安卓和IOS APP. 本 ...

  9. 2019 Vue开发指南:你都需要学点啥?

    转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://dzone.com/articles/vue-development-in-2019 ...

随机推荐

  1. vue.JS 介绍

    vueJS 介绍 首先,vueJS 是我很早之前就想要接触学习的东西,但是呢,一直没时间,主要是在学校,事太多,没心思定下心来学习,我学生生涯的最后一个假期的第一天晚上,万事开头难,那就先写点儿什么东 ...

  2. 05: greenlet:轻量级的并发编程

    网络编程其他篇 1.1 greenlet简介 1.greenlet原理 & 使用 1. greenle间切换 1)一个 “greenlet” 是一个很小的独立微线程,可以把它想像成一个堆栈帧, ...

  3. 20145311 王亦徐 《网络对抗技术》 Web基础

    20145311 王亦徐 <网络对抗技术> Web基础 实验内容 简单的web前端页面(HTML.CSS等) 简单的web后台数据处理(PHP) Mysql数据库 一个简单的web登陆页面 ...

  4. day28 网络编程

    网络编程 什么是网络编程? 编写基于网络的应用程序的过程称之为网络编程 一.CS构架 C/S构架 服务器和客户端之间用网线连接 提供数据的计算机称为服务器,访问数据的计算机称为客户端 二.网络通讯的基 ...

  5. 鼠标滑轮事件QWheelEvent

    一般鼠标滑轮事件会发出信号,参数是QWheelEvent,只需要新建槽函数,QWheelEvent作为参数. void myMouseWheelEvent(QWheelEvent* even) {)/ ...

  6. fastjson常用方法

    fastjson是一款alibaba公司开发的json工具包.json经常被使用在数据传输方面,因此特意对它的一些常用方法做备注,欢迎看客在评论区补充或指出问题. 首先定义一个实体类,用于我们进行对象 ...

  7. Maven本地仓库引入自定义/第三方的jar

    在cmd下输入如下: mvn install:install-file -Dfile=D:\ojdbc7.jar -DgroupId=com.tech4j.driver -DartifactId=or ...

  8. bzoj1458: 士兵占领 网络流

    链接 https://www.lydsy.com/JudgeOnline/problem.php?id=1458 也可以去luogu 思路 想成倒着删去点,使得依旧满足覆盖!! 左边横,右边列,之间用 ...

  9. 【做题】CF177G2. Fibonacci Strings——思维+数列

    题意:定义斐波那契字符串为: $f_1 = $ "a" \(f_2 =\) "b" \(f_n = f_{n-1} + f_{n-2}, \, n > 2 ...

  10. 使用JAX-WS开发WebService

    Axis2和CXF是目前流行的Webservice框架,这两个框架都属于重量级框架.相对而言,JAX-WS RI是一个轻量级的框架.开发WebService只需要很简单的几个步骤:写接口和实现-> ...