Config.xml是一个全局配置文件,用于控制cordova应用程序行为的许多方面。 这个不依赖于平台的XML文件是基于W3C的“打包Web应用程序(Widget)”规范进行安排的,并扩展到指定核心Cordova API功能,插件和特定于平台的设置。
对于使用Cordova CLI(在命令行界面中描述)创建的项目,可以在顶级目录中找到此文件
 
请注意,在版本3.3.1-0.2.0之前,该文件存在于app / www / config.xml中,并且仍然支持该文件。
使用CLI构建项目时,将该文件的版本被动地复制到各种平台/子目录中。 例如
app/platforms/ios/AppName/config.xml
app/platforms/blackberry10/www/config.xml
app/platforms/android/res/xml/config.xml
 对config.xml进行解读:

<?xml version='1.0' encoding='utf-8'?>
<widget id="com.mycompany.myteam.myapp" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
<!-- 如果使用CLI构建应用程序,则可以使用plugin命令启用设备API。 这不会修改顶级的config.xml文件,
因此该元素不适用于您的工作流。 如果您直接在SDK中工作,并使用平台特定的config.xml文件作为源,
则可以使用该标记来启用设备级API和外部插件。 他们经常在平台特定的config.xml文件中显示自定义值。
有关如何指定每个功能的详细信息,请参阅API参考。 有关插件的更多信息,请参阅“插件开发指南”。
注意:大多数情况下,您不想直接设置。
-->
<feature name="Whitelist"> <!--用于指定什么特定的插件参数,例如:什么包检索插件代码,以及是否在Webview初始化期间初始化插件代码。
插件必须在您的Cordova-Android应用程序的res / xml / config.xml文件中指定。
-->
        <param name="android-package" value="org.apache.cordova.whitelist.WhitelistPlugin" />
<param name="onload" value="true" />
</feature>
<name>MyApp</name>
<description>
A sample Apache Cordova application that responds to the deviceready event.
</description>
<author email="dev@cordova.apache.org" href="http://cordova.io">
Apache Cordova Team
</author>
<!--//定义应用程序的起始页-->
<content src="index.html" />
<!--//可以访问任意服务器-->
<access origin="*" />
<!--//控制应用程序允许哪些URL要求系统打开。 默认情况下,不允许使用外部URL。-->
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<allow-intent href="market:*" />
<!--//键值对-->
<preference name="loglevel" value="DEBUG" />
<!--//指定在准备过程中要还原的插件的详细信息。 插件版本控制-->
<plugin name="cordova-plugin-device" spec="^1.1.0" />
</widget>
Cordova插件
先说说什么是插件,我们知道,cordova是一种Hybrid App,所以基本上大多数的开发方式和web开发是一致的,就是直接操作浏览器就好了,可是我们是要开发一款类似原生的App,如果有涉及原生操作的需求怎么办,例如修改启动页图片,修改状态栏,获取设备信息等等,这些浏览器层面是无法帮我们做到的,因此这时就得通过cordova的插件机制来实现了。所谓的插件,其实就是原生API与浏览器之间的一座桥梁而已,cordova通过浏览器(例如android的webview)暴露原生API接口给Javascript调用,具体怎么实现有兴趣可以自己去深入了解。
插件就是一些附加代码用来提供原生组件的JavaScript接口,他允许你的App可以使用原生设备的能力,超越了纯粹的Web App。插件必须在您的Cordova-Android应用程序的res / xml / config.xml文件中指定。
以状态栏插件为例,添加插件 cordova plugin add cordova-plugin-statusbar
罗列出已安装的插件 cordova plugin ls

目录分析

打开platform下的android平台目录

webapp开发学习---Cordova目录结构分析及一些概念的更多相关文章

  1. webapp开发学习---Cordova环境搭建

    Cordova 使用HTML, CSS & JS进行移动App开发;多平台共用一套代码;免费开源 步骤:(来自Cordova官网) 1.安装Cordova(在node.js环境下进行安装) 命 ...

  2. webapp开发学习--Ionic+Cordova 环境搭建

    我们看 Ionic 能给我们提供什么? 一个样式库,你可以使用它来装饰你的HTML网页 ,看起来 想 移动程序的界面,什么header .content.footer.grid.list.这貌似没什么 ...

  3. odoo开发学习「目录」

    目录: 一.odoo介绍(发源 版本 ERP对比 优势劣势 应用场景 发展情况 社区介绍) 二.odoo设计思想 三.odoo自带模块 四.odoo开发前准备(python基础) 五.odoo环境搭建 ...

  4. JFinal Web开发学习(二)目录、架构、package设计

    package分类 config是JFinal的项目配置 controller是控制器 handler可以设置全局处理器,例如判断用户请求中是否直接请求 FreeMarker的模板文件ftl或者htm ...

  5. Java开发学习(一)----初识Spring及其核心概念

    一. Spring系统架构 1.1 系统架构图 Spring Framework是Spring生态圈中最基础的项目,是其他项目的根基. Spring Framework的发展也经历了很多版本的变更,每 ...

  6. 高性能Cordova App开发学习笔记

    高性能Cordova App开发学习笔记 文件结构 添加插件 构建准备 各个www的作用,prepare命令会将hello\www的内容会拷贝到platform下的wwww目录,知道该改哪里了吧?如果 ...

  7. ionic小白的学习路之目录结构分析、创建组件、创建页面、页面跳转

    一. 目录结构分析 hooks:编译cordova 时自定义的脚本命令,方便整合到我们的编译系统和版本控制系统中. node_modules :node 各类依赖包. resources :andro ...

  8. 跨平台移动开发phonegap/cordova 3.3全系列教程-目录

    目录(更新完成后会附上源码供参考) 第一章 android平台开发 phonegap/cordova简介 1.开发环境搭建 2.helloworld 3.启动画面 4.结合asp.net/jqmboi ...

  9. python全栈开发学习_内容目录及链接

    python全栈开发学习_day1_计算机五大组成部分及操作系统 python全栈开发学习_day2_语言种类及变量 python全栈开发_day3_数据类型,输入输出及运算符 python全栈开发_ ...

随机推荐

  1. phpexcel不能输出中文

    问题描写叙述:在使用phpexcel时,假设在单元格中填充中文内容,会导致输出单元格为空的情况,甚至连中文的字符(?!等)都无法识别. 产生原因:从网上查是utf-8的问题 解决方法:能够用iconv ...

  2. android &lt;application&gt; 开发文档翻译

    由于本人英文能力实在有限,不足之初敬请谅解 本博客仅仅要没有注明"转",那么均为原创.转贴请注明本博客链接链接 <application>语法:    <appl ...

  3. Web—CSS概述

    一.概念: 它是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言 的一个子集)等文件样式的计算机语言. 二.特点: 1.实现网页内容与样式的分离     2.降低图形文件的 ...

  4. http的session和cookie

    1 http session和http请求之间的关系 http协议是无状态的,一次会话服务端需要处理多次http请求,就算是长连接,也是要发送多次请求的,由于http无状态所有每次的请求都是独立的,服 ...

  5. java生成随机汉字

    方法一: public static char getRandomChar() { return (char) (0x4e00 + (int) (Math.random() * (0x9fa5 - 0 ...

  6. js基础用法1

    click() 对象.click() 使对象被点击.closed 对象.closed 对象窗口是否已封闭true/falseclearTimeout(对象) 清除已设置的setTimeout对象cle ...

  7. javascript正则找script标签, link标签里面的src或者 href属性

    1. [代码]javascript 简单的search    <script(?:(?:\s|.)+?)src=[\"\'](.+?)[\"\'](?!\<)(?:(? ...

  8. BZOJ4814,几何

    对每个关键点i,将每个三角形缩成一个线段(因为三角形不相交),然后把线段两端点 和其他关键点一起 以i为中心点 极角排序. 扫一圈.扫到一个关键点j时, 判断当前最靠近i的线段是否遮盖i到j的路径, ...

  9. Linux设备模型 (4)

    <Linux设备模型 (2)>和<Linux设备模型 (3)>主要通过一些简单的实作介绍了kobject.kset.kobj_type.attribute等数据结构的用法,但这 ...

  10. JS事件流与DOM事件处理程序

    在Javascript的DOM中,关于事件Event对象的知识是一定要掌握的.Event对象模型主要分为两个部分,一个是Event对象本身具有的属性和方法,这个参照API就可以学得:另一个是在DOM节 ...