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. UTF-8 GBK UTF8 GB2312之间的区别和关系

    UTF-8 GBK UTF8 GB2312之间的区别和关系     UTF-8:Unicode TransformationFormat-8bit,允许含BOM,但通常不含BOM.是用以解决国际上字符 ...

  2. PHP开发者实用的代码

    一.查看邮件是否已被阅读 当你在发送邮件时,你或许很想知道该邮件是否被对方已阅读.这里有段非常有趣的代码片段能够显示对方IP地址记录阅读的实际日期和时间. <? error_reporting( ...

  3. HBuilder开发App教程05-滴石和websql

    滴石 介绍 滴石是用HBuilder开发的一款计划类app. 用到HBuilder,mui.nativejs以及h5一些特性. 预期 眼下仅仅开发到todolist级别, 以后计划做成日计划,月计划, ...

  4. 4 Ionic导航和核心组件--旅游应用

    简介:在本节课中,我们将会通过一个虚构的旅游景点来构建一款功能完善的应用.本应用的核心特性是管理用户的应用内导航.本节课的主要目的,是展现构建一个完整的应用的过程. 无论是什么移动应用,最重要的功能之 ...

  5. 当你使用LINQ做底层时,最好设计一个工厂,不要把LINQ的动作暴露给业务层

    1: using System; 2: using System.Collections.Generic; 3: using System.Linq; 4: using System.Text; 5: ...

  6. 使用 C# 开发智能手机软件:推箱子(三)

    这是"使用 C# 开发智能手机软件:推箱子"系列文章的第三篇.在这篇文章中,介绍 Common/Block.cs 源程序文件.   1 namespace Skyiv.Ben.Pu ...

  7. 2016/05/13 thinkphp 3.2.2 ① 数据删除及执行原生sql语句 ②表单验证

    [数据删除及执行原生sql语句] delete()  返回受影响的记录条数 $goods -> delete(30);   删除主键值等于30的记录信息 $goods -> delete( ...

  8. 更改Mysql登录密码

    版本号49之前的跨域设置 在Windows命令行下修改mysql数据库密码步骤如下: 1.通过dos命令进入mysql的bin目录: 2.输入“mysql -uroot -p”,回车进入mysql命令 ...

  9. Spring创建JobDetail的两种方式

    一.Spring创建JobDetail的两种方式 二.整合方式一示例步骤 1.将spring核心jar包.quartz.jar和Spring-context-support.jar导入类路径. 2.编 ...

  10. 常用的机器学习&数据挖掘知识点总结

    Basis(基础): MSE(Mean Square Error 均方误差),LMS(LeastMean Square 最小均方),LSM(Least Square Methods 最小二乘法),ML ...