cordova之旅之初识
emmmm, 一直徘徊在移动端采用什么技术比较好,一直也没有找到,让我为了一个移动端而去学习一波react全家桶是不现实的操作,反观自己的技术栈,通过长时间的对比和剖析找到了入口点,不管了先会写再说吧,没有过的评价都是瞎BB,cordova + ionic +angular6之旅正式开启
cordova是什么?为什么我要从它入手?
按照我浅浅的理解,cordova是让前端人员仅仅使用已掌握的知识达到JS也能控制访问设备硬件的一个中间层,由前端人员编写相应的JS代码,由cordova来做中间人吧JS代码的意思转译成各种设备能听得懂的“命令”从而做相应的操作的一种机制。
之所以从他入手是,技术栈是ANGULAR,移动端自然而然的就切换到了ionic但是呢,其实还有nativescript,个人更看好ns,但是呢由于呢ns刚出现的时间不是很长,社区自然就弱啦,cordova的前身如果我讲得没有错的话是phonegap,算是一种老技术了,已经有很完善的文档以及很多人都采坑了,遇到坑一搜一大把emmm,废话不多说啦,此篇介绍环境配置到创建一个应用
环境搭建
环境搭建可谓是非常非常关键啊,搭建不好项目根本起不来
1、安装node
2、安装npm
上述两个安装直接去官网下载操作系统对应的安装包,傻瓜式安装,安装好后进入cmd 通过 node -v npm -v 查看版本,如果都出来啦,就证明都安装成功啦
3、安装JDK
根据官方文档说的,虽然JDK已经出了10 了,或者你看到更高的版本,但是都要安装JDK8 更高版本暂不支持
关于JDK的安装,直接搜索JDK DOWNLOAD即可,或者到cordova官网有个JDK8的传送门
4. 配置系统环境变量
到目前为止配置如下几个环境变量
配置完成后,通过cmd 输入path命令查看是否有以上环境变量路径,有的话就是配置成功了
5. 安装ANDROID STUDIO
emmmm, 既然要涉及SDK,等等,可以选择性的装或者不装,不装的童鞋,去安卓官网点击下载的时候会有几个选项,一个是下载Android studio一个是下载SDK之类的相关工具包二选一,我这里是下载了,因为可能会用到打包的时候,毕竟曾经学过安卓开发哈哈
6. 安卓了AS童鞋继续走,第一次打开AS的时候,会让你下载SDK 、 platform tools就都下载好啦,下载完成后,在页面的AVD按钮点击创建一个模拟器,版本26开始,不要过高,并且下载想要的SDK
7. 配置一下环境变量
一样的,配置完成后通过cmd 输入path命令查看以上路径是否存在
至此,环境算是该下载的就下载完了,该配置的也配置完了,那么开始进入cordova操作阶段
使用cordova创建第一个应用
// 1. 创建工程 cordova create hello com.example.hello HelloWorld // 2. cd hello工程文件 // 3. 添加要编译的平台 ,这里我以安卓为例 cordova platform add android | ios // 具体还可以安装什么可以通过 cordova platform add --help 查看 // 4. 查看已经添加的平台 cordova platform ls // 5. 检查要打包的依赖环境是否都齐了,没有齐全的话在terminal中显示想要的那些不齐全 cordova requirements // 6. 打包成相应的设备,这里打包成安卓项目 cordova build andorid // 打包成功后会出现一个platforms的文件夹,这个文件夹不要自己随便改动,而且每次WWW文件夹有变化的话就要重新打包,想要重新打包的话就要先把之前下载的paltform 删掉在重新add进来在打包,包括安装新的插件也是如此 // 7. 运行 // 在模拟器中运行 cordova emulate // 也可以指定要再哪个模拟器上运行,模拟器的名称如果是空格的就换成下划线 // cordova emulate --AVD_PIXES_26 // 在真机中运行 // cordova run andorid // 真机调试不能文件变一下就会自动联调,需要自己重新输入一下真机运行的命令才可以
至此,一个简单的cordova应用就能被运行出来了
TIPS
1、 在AS中导入cordova项目也能打包,只要把cordova project import进入AS 然后选中项目的platform/android文件夹 然后gradle sync一下就可以打包啦;
2. cordova的官网上表明cordova有很多版本,每个cordova-andorid的版本想上支持和向下兼容的范围不一样,可以通过cordova platform add android@版本号 --save 进行变换
3. 添加插件,cordova神奇之处就是他的插件了,他的插件帮我们做了很多处理来调用设备的硬件
// 添加插件 cordova plugin add 插件名 // 添加插件之前要装平台 // 查看已经安装的插件 cordova plugin ls // 诺要安装插件,要将原有的platform remove掉,在重新add进来
4. remove platform
cordova platform remove android
作者:承蒙时光
出处:http://www.cnblogs.com/timetimetime/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Android冷启动白屏问题
1. 冷启动与热启动 通常我们在使用某个应用程序时,都是点击桌面应用图标来启动该程序。你肯定或多或少的碰到过这种情况:应用启动的一刹那,手机会先白屏或者黑屏一段时间,然后再进入应用程序的主页,但是你退出应用后再次打开APP,确又发现白屏时间极短或者压根感觉不出来。 上面这种现象,涉及到2个概念:冷启动与热启动,我们先来理解下这2个术语是什么意思。 冷启动:当启动某个应用程序时,如果Android手机系统发现后台没有该应用程序的进程,则会先创建一个该应用程序进程,这种方式叫冷启动。 热启动:当启动某个应用程序时,系统后台已经有一个该应用程序的进程了,则不会再创建一个新的进程,这种方式叫热启动。通常,我们按返回键退出应用,按home键回到桌面,该应用进程还一直存活,再次启动应用都叫热启动。 需要注意的是,现在很多手机都有一键清理内存的功能,例如小米、华为等手机,还有类似腾讯手机管家之类的软件,也可实现类似功能。采用这些方式清理内存后,应用进程被杀掉了,再次启动应用,都属于冷启动了。 2. 白屏原因 通常情况下,白屏现象都是在冷启动情况下出现的,如果白屏时间过长,就会给人一种APP很卡顿的感...
- 下一篇
react native android 实现图片预览 图片保存 react-native-image-zoom-viewer
上一篇 介绍了ios 的图片预览 和图片保存 ,Android 实现起来就稍微复杂点, image.png android 的 CameraRoll 只支持 本地文件,解决方式就是把图片下载到本地 ,然后调用这个保存到相册的方法。 这里用到的是 react-native-fs 关于这个 react-native-fs 的使用 git上介绍的已经很详细了,大家可以去看下如何使用的。 下面介绍下:android保存图片到本地相册 1.在android 工程下的 image.png 添加 读取外部存储的权限: <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 下载图片并保存 这里展现部分代码: import RNFS from 'react-native-fs'; import ImageViewer from 'react-native-image-zoom-viewer'; this.androidDownPath = `${RNFS.DocumentDirectoryPat...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合Redis,开启缓存,提高访问速度
- CentOS关闭SELinux安全模块
- Hadoop3单机部署,实现最简伪集群
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2更换Tomcat为Jetty,小型站点的福音