Cordova基本使用(一)
简述
Apache Cordova是一个开源的移动开发框架。允许你用标准的web技术-HTML5,CSS3和JavaScript做跨平台开发。 应用在每个平台的具体执行被封装了起来,并依靠符合标准的API绑定去访问每个设备的功能,比如说:传感器、数据、网络状态等。
使用Apache Cordova的人群:
移动应用开发者,想扩展一个应用的使用平台,而不通过每个平台的语言和工具集重新实现。
web开发者,想包装部署自己的web App将其分发到各个应用商店门户。
移动应用开发者,有兴趣混合原生应用组建和一个WebView(一个特别的浏览器窗口) 可以接触设备A级PI,或者你想开发一个原生和WebView组件之间的插件接口。
架构
这是cordova应用程序的几个组成部分。下面这幅图是cordova应用架构的高级视图。

专业盗图
WebView
Cordova启用的WebView可以给应用提供完整用户访问界面。在一些平台中,他也可以作为一个组件给大的、混合应用,这些应用混合和Webview和原生的应用组件。(查看Embedding WebViews获得详细内容。)
Web App
这是你应用程序代码存在的地方。应用的实现是通过web页面,默认的本地文件名称是是index.html,这个本地文件应用CSS,JavaScript,图片,媒体文件和其他运行需要的资源。应用执行在原生应用包装的WebView中,这个原生应用是你分发到app stores中的。
这个容器中包含一个非常重要文件- config.xml 文件他提供App的重要的信息和特定的参数用来影响App的工作,比如说是否响应方向的变动。
基础使用
安装Cordova CLI:
下载和安装Node.js。安装完成后你可以在命令行中使用
node和npm。(可选)下载和安装git client, 如果你没有。安装成功后,你可以在命令行中使用
git。 这个命令行使用下载git仓库中的资源。安装
cordova模块使用Nodejs的npm工具。cordova模块会被npm工具自动下载。
在OS X和Linux上:
$ sudo npm install -g cordova
在OS X和Linux上,
npm命令加上前缀sudo因为cordova可能需要安装在其他的受限制目录比如/usr/local/share。如果你使用可选工具nvm/nave或者具有安装目录的写权限,那么你可以省略sudo前缀。这里有更多提示 可用在使用npm没有sudo前缀时,如果你想那么做。在Windows上:
C:\>npm install -g cordova
-g标志是告诉 npm 我们全局安装 cordova。否则我们将会安装在当前工作目录的 node_modules子目录。
安装完成后,你应该能够在命令行中运行cordova命令,在没有任何参数的时候会打印一些帮助信息
创建App
熟悉命令,使用 cordova -h 查看。

2. 新建命令[链接]
#cordova create path [id [name [config]]] [options]
# 创建文件名为demoApp 包名 org.apache.cordova.demoApp 应用名为demoApp
cordova create demoApp org.apache.cordova.demoApp demoApp
3. 添加插件[链接]
eg:cordova plugin add cordova-plugin-camera
4.添加平台[链接]
cd demoApp
cordova platform add android
cordova platform add android@6.0.0
cordova platform add ios
cordova platform add brower
5.检测环境[链接]
cordova requirements [platformName]
6.生成APP[链接]
默认情况下, cordova create生产基于web应用程序的骨架,项目开始页面位于www/index.html 文件。任何初始化任务应该在www/js/index.js文件中的deviceready事件的事件处理函数中
cordova build cordova build android cordova build android --verbose cordova build ios
cordova build android --release -- --keystore="..\android.keystore" --storePassword=android --alias=mykey
7.查看生成的apk
生成app后面,最后的信息里面有apk的路径
/demoApp/platforms/android/app/build/outputs/apk/debug
/demoApp/platforms/android/app/build/outputs/apk/release
项目结合cordova
根据cordova的描述,web的项目目录位于www文件夹里,那么也就是把静态文件生成到www文件夹就可以了。然后在index.html里面引入cordova.js
<script src="cordova.js"></script>
普通h5项目结合cordova
直接把文件拷贝到www下
vue项目结合cordova
vue-cli项目可以修改webpack build的生成路径到www文件夹里
见:项目/config/index.js 修改如下
//代码省略
build: {
// Template for index.html
index: path.resolve(__dirname, '../www/index.html'), // Paths
assetsRoot: path.resolve(__dirname, '../www'),
assetsSubDirectory: 'static',
assetsPublicPath: '', //代码省略
Cordova基本使用(一)的更多相关文章
- H5程序员如何利用cordova开发跨平台应用
什么是Cordova? Cordova以前也叫PhoneGap,它提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头.麦克风等.Cordova还 ...
- Apache Cordova开发Android应用程序——番外篇
很多天之前就安装了visual studio community 2015,今天闲着么事想试一下Apache Cordova,用它来开发跨平台App.在这之前需要配置N多东西,这里找到了一篇MS官方文 ...
- Win10 UWP开发系列:使用VS2015 Update2+ionic开发第一个Cordova App
安装VS2015 Update2的过程是非常曲折的.还好经过不懈的努力,终于折腾成功了. 如果开发Cordova项目的话,推荐大家用一下ionic这个框架,效果还不错.对于Cordova.PhoneG ...
- VS2015 Update2中有关cordova和xamarin安装的问题
最近VS2015出了Update2,当然是第一时间进行了安装,中间过程曲折,反复安装卸载n次,也算是获得了一定的安装经验值.现在说一下经常出的问题. Update2里最吸引人的当然是跨平台开发的部分, ...
- Appium环境搭建+cordova
1.安装JDK 配置JAVA_HOME(变量值为jdk的安装目录)以及Path path值如下: 验证是否生效 2.安装node.js 选择适合自己的版本官网直接下载https://nodejs.or ...
- Cordova应用程序修改启动画面或者Icon
1) 制作启动画面图片或icon ionic resources //同时生成icon和splash ionic resources --icon //只生成icon ionic resources ...
- HTML5学习总结-番外04 Cordova/PhoneGap
一 PhoneGap 1 PhoneGap简绍 http://www.cnblogs.com/JustRun1983/p/3819433.html 2 环境安装 http://cordova.apac ...
- Mac下安装ionic和cordova,并生成iOS项目
为了开发HTML5,除了最新使用React Native等之外,目前首选的为稳定的ionic+Angularjs来开发iOS和android. Ionic(ionicframework一款接近原生的H ...
- 搭建 AngularJS+Ionic+Cordova 开发环境并运行一个demo
目前的手机APP有三类:原生APP,WebAPP,HybridApp:HybridApp结合了前两类APP各自的优点,越来越流行. Cordova就是一个中间件,让我们把WebAPP打包成Hybrid ...
- Cordova环境搭建 & HelloWorld
目前的手机APP有三类:原生APP,WebAPP,HybridApp:HybridApp结合了前两类APP各自的优点,越来越流行. Cordova就是一个中间件,让我们把WebAPP打包成Hybrid ...
随机推荐
- 【转载】Netty堆外内存泄漏排查
https://www.imooc.com/article/298943 上篇文章介绍了Netty内存模型原理,由于Netty在使用不当会导致堆外内存泄漏,网上关于这方面的资料比较少,所以写下这篇文章 ...
- Qt编写视频监控管理平台(支持海康/大华/宇视/华为/天地伟业/H264/H265等)
一.前言 海康大华等厂家自己的客户端软件,基本上都是支持自家的设备,不支持其他家的摄像机和硬盘录像机,并不是因为技术上做不到,这些大厂要实现支持兼容其他的家的(他们家的服务端或者收费的都是支持其他家的 ...
- Qt编写地图综合应用40-覆盖物弧线
一.前言 弧线可以用来指示某几个点直接弧形的方式绘制线条,尤其是飞机轨迹,起点到终点弧形曲线展示,更美观.百度地图的折线图.矩形图.圆形图等,都统称覆盖物,都是作为覆盖物绘制上去的,这样的好处是速度很 ...
- Qt编写安防视频监控系统26-硬件加速
一.前言 硬件加速这个功能在一年多以前就已经具备,当时对两个内核一个是ffmpeg内核.一个是vlc内核都做了对应的接口函数,只是当时为了简单没有在系统设置中做出接口,vlc做硬件加速不用自己写代码实 ...
- Qt编写地图综合应用14-离线地图下载
一.前言 网上其实有很多各种各样的离线地图下载器,大部分都是要收费的,免费的要么是限制了下载的瓦片数量或者级别,要么是下载的瓦片图打上了水印,看起来很难看,由于经常需要用到离线地图,摆脱这个限制,特意 ...
- Qt开发经验小技巧91-100
数据库处理一般建议在主线程,如果非要在其他线程,务必记得打开数据库也要在那个线程,即在那个线程使用数据库就在那个线程打开,不能打开数据库在主线程,执行sql在子线程,很可能出问题. 新版的QTcpSe ...
- [转]CMake菜谱(CMake Cookbook中文版)
CMake菜谱(CMake Cookbook中文版) 翻译 搜索 复制
- Android-studio-ide-201.7042882-windows-4.1.2项目卡在Gradle: Download gradle-6.5-bin.zip
现象描述: Android-studio-ide-201.7042882-windows-4.1.2项目卡在Gradle: Download gradle-6.5-bin.zip,如下所示: 原因分析 ...
- IM开发干货分享:有赞移动端IM的组件化SDK架构设计实践
本文由有赞技术团队原创分享,原题"有赞 APP IM SDK 组件架构设计",即时通讯网收录时有修订和改动,感谢原作者的无私分享. 1.引言 本文主要以Android客户端为例,记 ...
- 收藏几个常用的vue自定义组件,抄自 他人,以防丢失
在 Vue,除了核心功能默认内置的指令 ( v-model 和 v-show ),Vue 也允许注册自定义指令.它的作用价值在于当开发人员在某些场景下需要对普通 DOM 元素进行操作. Vue自定义指 ...