0

我正在开发一个带有嵌入式 Cordova Web 视图的纯 iOS 项目。Cordova 文档说我应该使用 Plugman 而不是 Cordova CLI。但为什么?当我添加我的平台时,Cordova 会自动检测并添加插件。要使用 Plugman,我必须删除每个插件并重新添加它。我发现的唯一区别是 Plugman 将插件复制到平台/ios/cordova/plugins,而 Cordova 将它们保存在插件目录中。而且 Plugman 仍然为其他平台复制源代码!为什么要使用它?该应用程序可以通过任何一种方式加载插件,那么为什么更喜欢 Plugman?

4

2 回答 2

1

这不是首选,它是使用单平台工作流时唯一可用的工具。您根本不使用cordova(及其CLI),仅platform使用.plugincordova-ios

要创建 iOS 项目,请运行node_modules/cordova-ios/bin/create myproj.

然后使用plugman install --platform ios --project myproj --plugin cordova-plugin-device. 这会将插件的 JS 接口复制到 myproj/platform_www。由于您使用的是自己的 Xcode 项目,因此您根本不会使用生成的“myproj”项目——它只是 Crodova 运行时文件的暂存区。因此,您需要手动将插件的源文件添加到您的项目中,然后将其platform_www文件复制到您自己的 www 目录,您的嵌入式 Web 视图可以在其中加载它们。

这应该在 Cordova 指南中更详细地介绍。

于 2021-09-13T16:26:34.820 回答
0

在这里的最新文档中找到了这个:https ://cordova.apache.org/docs/en/latest/plugin_ref/plugman.html

如果您使用跨平台工作流,您可以使用 cordova CLI 实用程序来添加插件,如命令行界面中所述。CLI 一次修改所有指定平台的插件。

如果您使用以平台为中心的工作流程,您将使用较低级别的 Plugman 命令行界面,分别针对每个目标平台。

在我的应用程序开发的早期(可能是 Cordova 3.x 左右),我会开始在各个平台上工作,而不是在顶层工作——然后当我执行cordova build. 超级令人沮丧——所以我最终只在顶层而不是在/platforms/目录中工作。我从来没有用过Plugman。所以也许这是有利于 CLI 的数据点。:-)

于 2021-09-10T23:20:19.350 回答