前颜(yan)
最近公司有一个项目需求是利用h5进行跨平台开发,这里所说的跨平台开发指的是:将h5代码利用某种方式或工具环境进行打包,最后生成android的apk以及ios的ipa。
本文只讲解android开发环境,等以后有空了再介绍一篇关于ios的。

一、知识讲解
本文基于ionic4+cordova构建android应用,首先做一下以下的知识梳理。

1 ionic是一套用于开发混合手机应用的开源h5框架,包含一套适合于mobile application的ui组件库以及相关访问原生设备的native接口等。目前ionic已更新至ionic4,ionic4的特色在于兼容angular6以及rxjs6,有着angular6的特点,因此,angular的开发者可以很容易的切换到ionic4的开发。
ionic官方文档:https://beta.ionicframework.com/docs/intro

2 cordova是一套开源的移动应用开发框架。cordova能够利用web应用(如ionic构建的h5应用)构建android工程以及ios工程(今天只讲android工程)。并且可以编译android工程,最后生成android apk。
cordova官方文档:https://cordova.apache.org/docs/en/latest/guide/overview/index.html

3 android sdk
cordova在编译android工程的时候需要有android sdk等开发环境的支持。如果想对ionic和cordova更加详细的了解,请见官方文档。

接下来,开始搭建开发环境。
因此,综上所述,需要搭建的开发环境有:ionic、cordova以及android 开发环境。

我的开发环境如下(仅供参考):
node:v8.11.1
npm:5.5.1
ionic:4.0.3
cordova:8.0.0
jdk:1.8.0_45
gradle:4.9

二、安装nodejs
首先你都懂的,要装个node环境,因为Ionic和cordova的安装以及后续的许多前端工具的安装都依赖于node的包管理器npm。
建议安装最新版本的node。
没有装过的请看安装教程:
http://www.runoob.com/nodejs/nodejs-install-setup.html

三、安装ionic
1 安装全局的ionic cli:
npm install -g ionic

2 检测ionic是否安装成功:
ionic -v

3 创建ionic项目
安装成功后,即可通过ionic cli命令创建ionic项目:
ionic start myApp tabs --type=angular

(注意:目前ionic4是beta版,需要加上 –type=angular才能创建基于angular的项目,后面等发布正式版本,估计就不需要了)

说明:上面命令中tabs是ionic的其中一个模板,可以通过 ionic start --list 查看可选的模板。
比如: ionic start myApp blank --type=angular 可以创建空白模板的ionic项目

4 下载ionic项目的node_modules包
在第三步创建ionic项目的过程中,ionic cli会自动帮你下载依赖的node_modules包(可以通过package.json查看项目所依赖的包),
如果下载失败的话,可以删除node_modules文件夹,手动安装:npm install

5 运行ionic项目: ionic serve
ionic项目本身就是一个web h5项目,因此可以像vue、angular一样运行于浏览器。
好了,ionic项目搭建成功后,接下来搭建cordova环境,然后利用cordova把ionic项目构建android工程。

四、安装cordova
1 安装全局的cordova:
npm install -g cordova

2 检测cordova是否安装成功:
cordova -v

3 构建android工程
1) 查看支持的平台以及版本:ionic cordova platform ls
2) 构建android platform:ionic cordova platform add android

说明:此步骤会修改ionic的目录结构,让ionic支持cordova。构建成功后,会在platforms目录下生成一个android工程。

其他cordova命令:
移除android工程:ionic cordova platform remove android
添加指定版本的android工程:ionic cordova platform add android@6.0.0

至此,cordova环境已经搭建完成,并且利用ionic生成了一个android工程(位于/platforms/android)。
但是此时还不能通过cordova编译该android工程,因为cordova编译android工程需要有android sdk的开发环境。所以,接下来配置android sdk环境。

五、配置android sdk环境
1 安装jdk(下载、解压、配置环境变量)
安装jdk可以参考这篇文章的jdk章节:
https://blog.csdn.net/love4399/article/details/77164500
用cmd 运行 javac -version 检查是否安装成功

2 安装android-sdk(下载、解压、配置环境变量)
安装android-sdk可以参考这篇文章的android-sdk章节:
https://blog.csdn.net/love4399/article/details/77164500
用cmd 运行 adb –version 检查是否安装成功

3 安装gradle(下载、解压、配置环境变量)
安装安装gradle可以参考这篇文章:
https://jingyan.baidu.com/article/00a07f38706f0b82d028dcf3.html
用cmd 运行 gradle -v 检查是否安装成功

以上环境搭建成功之后,即可通过cordova命令进行编译:ionic cordova build android,编译成功之后,会在/myApp/platforms/android/app/build/outputs/apk/debug目录下生成一个 xxx.apk。

六、构建第一个android应用
至此,一个android apk就生成啦。
最后总结一下利用ionic4+cordova构建android应用的过程:
1 ionic start myApp blank–type=angular (创建ionic项目)
2 ionic cordova platform add android (添加android平台)
3 ionic cordova build android (编译生成apk)
是不是很简单,前提是以上环境都已经搭建好了。

参考文档:
1)cordova:https://baike.baidu.com/item/Cordova/9192368?fr=aladdin
2)ionic:https://baike.baidu.com/item/ionic/1326386?fr=aladdin
3)ionic开发android app步骤
4)2017年Android SDK下载安装及配置教程:https://blog.csdn.net/love4399/article/details/77164500

基于ionic4、cordova搭建android开发环境的更多相关文章

  1. 161206、 Ionic、Angularjs、Cordova搭建Android开发环境

    1.jdk 环境变量配置 path:C:\Program Files\Java\jdk1.7.0_79\bin 2.Node.js 因为安装cordova时要用到node.js的npm 下载地址: h ...

  2. 160902、Ionic、Angularjs、Cordova搭建Android开发环境

    1.jdk 环境变量配置 path:C:\Program Files\Java\jdk1.7.0_79\bin 2.node.js 因为安装cordova时要用到node.js的npm 下载地址: h ...

  3. 基于eclipse搭建android开发环境-win7 32bit

    基于eclipse搭建android开发环境-win7 32bit 前言:在使用朋友已搭建的Android开发环境时,发现朋友的开发环境版本较低且在update SDk时失败,便决定根据网上文章提示从 ...

  4. 单机搭建Android开发环境(三)

    单机搭建Android开发环境,第一篇重点介绍了如何优化Windows 7系统,以提高开发主机的性能并延长SSD的使用寿命.第二篇重点介绍了基于VMWare安装64位版的Ubuntu 12.04,并安 ...

  5. 单机搭建Android开发环境(一)

    老话,工欲善其事必先利其器.为了学习安卓系统开发,我下了血本,更换了电脑.俗语,磨刀不误砍柴工,好钢用在刀刃上,为了发挥新本的最大潜能,我花费了很长时间去做配置和优化,都感觉有点偏执了.不过,从到目前 ...

  6. 在CentOS下搭建Android 开发环境

    在CentOS下搭建Android 开发环境 目录 1.环境搭建 1.1.JDK安装 1.2.Eclipse安装 1.3.ADT安装 1.4.Android SDK安装 1.5.Android NDK ...

  7. 搭建Android开发环境附图详解+模拟器安装(JDK+Eclipse+SDK+ADT)

    ——搭建android开发环境的方式有多种,比如:JDK+Eclipse+SDK+ADT或者JDK+Eclipse+捆绑好的AndroidSDK或者Android Studio. Google 决定将 ...

  8. mac os 下搭建android开发环境

    mac os 下搭建android开发环境 周银辉 mac os 下搭建android环境比较方便, 如下几个步骤: 1,安装jdk 先搞清楚自己是否已经安装,在命令行下:java -version, ...

  9. 在Eclipse下搭建Android开发环境教程

    我们昨天向各位介绍了<在NetBeans上搭建Android SDK环境>,前不久也介绍过<在MyEclipse 8.6上搭建Android开发环境>, 都受到了读者的欢迎.但 ...

随机推荐

  1. XML详解一XML语法

    XML指可扩展标记语言很类似 HTML,被设计用来传输和存储数据而非显示数据,XML标签没有被预定义需要自行定义标签,标签具有自我描述性,同时XML也是 W3C 的推荐标准. 先来写一个XML脚本de ...

  2. python 之 查找某目录中最新的文件

    记录一下这个方法,感觉很有用!>.< import os def find_newest_file(path_file): lists = os.listdir(path_file) li ...

  3. 腾讯大数据平台Oceanus: A one-stop platform for real time stream processing powered by Apache Flink

    January 25, 2019Use Cases, Apache Flink The Big Data Team at Tencent     In recent years, the increa ...

  4. MySQL常用日期时间函数

    日期和时间函数: MySQL服务器中的三种时区设置: ①系统时区---保存在系统变量system_time_zone ②服务器时区---保存在全局系统变量global.time_zone ③每个客户端 ...

  5. macos 下usb键盘问题.

    Mac 与PC键盘的对比及快捷键(黑苹果) https://www.jianshu.com/p/240f31f6f81a 剩下的就是 系统偏好设置 - 键盘 - 修饰键 - USB键盘(目标键盘) 把 ...

  6. 012_py之证书过期监测及域名使用的py列表的并集差集交集

    一.由于线上域名证书快要过期,需要进行监测,顾写了一个方法用于线上证书过期监测,如下: import ssl,socket,pprint def check_domain_sslexpired(dom ...

  7. ORM杂记

    1.反射练习 import sys class Person(object): def __init__(self, name): self.name = name def eat(self, foo ...

  8. STM32407+LAN8720A+LWIP 实现TCP Client

    硬件 一.配置CubeMax工程 二.配置系统时钟 因为LAN8720使用的是外部25MHz的晶振,所以不需要单片机输出时钟 三.配置ETH和LWIP参数 四.更改代码 LAN8720A在初始化的时候 ...

  9. Java面试准备之IO

    Java IO Java IO 分类 Java BIO: 同步并阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线 ...

  10. keepalived--小白博客

    一.HA集群中的相关术语 1.节点(node) 运行HA进程的一个独立主机,称为节点,节点是HA的核心组成部分,每个节点上运行着操作系统和高可用软件服务,在高可用集群中,节点有主次之分,分别称之为主节 ...