config.xml 中的插件和功能标签有什么区别?

What is the difference between the plugin and feature tags in config.xml?

<feature> and <plugin> tags in Cordova's config.xml文件有什么区别?

似乎<plugin>标签添加了一个插件,也可以传递变量,而<feature>标签只是为Cordova核心中包含的现有插件或功能添加变量。这是正确的吗?

// Plugin tag
<plugin name="cordova-plugin-whitelist" spec="~1.3.1" />

// Plugin tag including feature
<plugin name="phonegap-plugin-barcodescanner" spec="6.0.3">
    <variable name="CAMERA_USAGE_DESCRIPTION" value="Scan some stuff" />
</plugin>

您的示例不包含 <feature> 标签,这是大多数 Ionic 应用程序中包含的示例:

<feature name="StatusBar">
  <param name="ios-package" onload="true" value="CDVStatusBar" />
</feature>

区别在于您可以使用这些标签执行的操作。 <plugin> 标签允许您定义您的应用依赖于哪些插件,包括版本号等内容。如果插件作者创建了这样的功能,您也可以使用 <variable> 标签将变量传递给插件。

通过<feature>标签,你可以告诉Cordova某个插件使用了哪个包名。这就是示例中发生的情况,对于 StatusBar 插件,我们告诉 Cordova 查找名称为 CDVStatusBar 的包。另一个可用的属性是 onload,它告诉 Cordova 在加载应用程序时需要初始化插件。

此信息可以在 Cordova 文档中找到,您可以找到 here。他们还在文档中提到了以下内容:

NOTE: Most of the time, you do NOT want to set this directly.

我认为了解 <feature> 标签是件好事,但不要认为您应该太担心它们。只在插件需要时包含它们,否则就不要管它。