Config.xml 文件17 Mar 2025 | 4 分钟阅读 Config.xml 可以定义为 Cordova 应用程序的全局配置文件,我们可以在其中更改应用程序的配置。 在上一节中,我们创建了第一个 Cordova 应用程序,并在其中设置了反向域和名称。 如果要更改这些现有值,则可以使用 config.xml 文件轻松更改它们。 它是一个平台无关的 xml 文件,其中包含 Cordova 将 www 文件夹中的代码转换为特定于平台的安装程序所需的所有必要信息。 此文件根据 W3C 的打包 Web 应用程序控制 Cordova 的行为。 它还指定了应用程序的元数据。 它是创建任何 Cordova 应用程序时自动创建的默认文件。 可以手动编辑此文件,也可以使用命令行界面 (CLI) 的特定命令编辑。 我们可以向该文件添加两个配置,即全局和平台特定。 全局配置指定所有设备通用的配置,而平台特定配置是特定于平台的。 这些配置被解析到应用程序中,然后将内容转换为一组功能。 这些功能负责生成策略以访问本机设备 API 并显示应用程序与 Web 域的交互。 此文件位于应用程序的顶层目录中 app/config.xml  在 3.3.1-0.2.0 之前的版本中,config.xml 文件位于 app/www/config.xml。 当我们使用 CLI 构建任何应用程序时,config.xml 文件的版本将被复制到各种 platforms/ 子目录中。 config.xml 文件的配置表下表定义了 config.xml 文件中使用的元素 要素 | 描述 |
---|
Widget | 它定义了应用程序的反向域值,该值应在创建应用程序时指定。 | 名称 | 它定义了应用程序的名称。 | 描述 | 它表示应用程序的描述。 | 作者 | 它表示可在应用商店列表中显示的联系信息。 | 内容 | 它表示顶层 Web 资产目录中应用程序的起始页面。 默认值为 index.html,它显示在顶层 www 目录中。 | 插件 | 它是增强 Cordova 功能的附加功能。 它可以定义为代码包,用于帮助与本机平台进行通信。 | 访问 | 它用于控制对特定网络域的访问。 它具有默认的 origin 值 *,表示访问权限已对任何域开放。 | Engine (引擎) | 它指定有关平台的信息,这些信息在实施期间被还原。 | allow-intent | 它用于启用特定的 URL,以要求应用程序打开。 | Hook | 它表示您的自定义脚本,该脚本在特定操作发生时由 Cordova 调用。 它对于扩展默认的 Cordova 功能很有用。 | 平台 | 它表示我们构建应用程序的平台。 | resource-file | 它将资源文件安装到系统中。 |
widgetwidget 是 config.xml 文件的根元素。 widgets-config.xml 文件存储 widget 定义、widget 属性、页面定义和默认 widget 模板的信息。 我们可以编辑 config.xml 的配置设置来执行多项任务。 例如,如果我们要启用自定义 widget,我们可以通过在 config.xml 文件中定义 widget 轻松做到这一点。 它由一些属性组成,这些属性如下所示 属性(类型)仅适用于平台 | 说明 |
---|
id(字符串) | 一个必需的属性,用于指定应用程序的反向域标识符。 | version(字符串) | 一个必需的属性,用于定义以 minor/major/patch 符号表示的完整版本号。 | ios- CFBundleIdentifier(字符串) iOS | 它表示 iOS 平台的备用包 ID。 它会覆盖 id。 | ios- CFBundleVersion(字符串) iOS | 它表示 iOS 的备用版本。 | android- activityName(字符串) Android | 它表示 AndroidManifest.xml 中的活动名称。 请注意,它可以在添加 Android 平台后设置。 | android- packageName(字符串) Android | 它定义了 Android 的备用包名称。 它覆盖 id. | windows- packageName(字符串) Windows | 它定义了 Windows 的包名称。 默认值:Cordova.Example | windows- packageVersion(字符串) | 它定义了 Windows 的备用版本。 | osx- CFBundleVersion(字符串) OS X | 它定义了 OS X 的备用版本。 | xmlns:cdv(字符串) | 一个必需的属性,用于定义命名空间前缀。 | xmlns(字符串) | 一个必需的属性,用于定义 config.xml 文件的命名空间。 |
preference: 用于将各种选项设置为名称/值属性对的元素。 首选项的名称不区分大小写。 许多首选项特定于各个平台。 下面列出了 preference 的一些属性 属性 | 类型 | 说明 |
---|
导向 | String | 它允许您锁定方向。 因此,它不会响应方向的变化而旋转。 允许的值为 default、landscape 和 portrait。 它的默认值为 default。 | EnableViewportScale | Boolean | 如果我们将值设置为 true,它将阻止通过 viewport 元标记进行用户缩放范围的设置。 它的默认值为 false。 | UIWebViewDeclarationSpeed | String | 它用于控制动量滚动的减速速度。 它的默认值为 normal。 | BackupWebStorage | String | 允许的值为 none、local 和 cloud。 它的值设置为 cloud,以通过 iCloud 备份 Web 存储数据。 |
feature如果要使用 CLI 构建应用程序,则必须使用插件命令来启用设备 API。 因此,顶层 config.xml 文件不会改变。 因此,该元素不适用于工作流程。 如果您直接在 SDK 中工作并使用特定于平台的 config.xml 的源文件,则必须使用该标记来启用设备级别的 API 和外部插件。 Name: 字符串类型的 feature 的一个属性,用于定义要启用的插件的名称。
|