flutter plugin 和 flutter module 有什么区别?

What is the difference between flutter plugin and flutter module?

我是 flutter 插件开发的新手,我已经阅读了 Developing packages & plugins and Writing a good Flutter plugin, but I am confused as a beginner, I have developed Flutter Application based on webview_flutter 和一个 JavaScript 离线工作库。我想将其扩展为模块或插件。

Webview 渲染了一些东西。 JavaScript 正在从资产附加库。

我没有直接从我的代码调用任何平台 API,但我的代码依赖于另一个插件。

我该如何进行?作为插件还是作为模块?

插件是为了让 Flutter 可以使用本机功能。
模块是关于将 Flutter 与现有的本机应用程序集成。

也许您真正想要的是一个可重用的 Pub 包,您可以将其发布到 pub.dartlang.org(插件也是一个 Pub 包,只是一个特殊的包,另外利用对本机平台的访问)

另见

A "library package" 是一个 Pub 包,与通常不发布到 pub.dartlang.org 的普通 Dart "application package" 相反。

不依赖dart:htmldart:ui(Flutter)且不是Flutter插件的纯Dart Pub包(库包),可在任何平台(服务器、命令)上使用行,Flutter,浏览器)。

如果您的包具有指定的依赖项之一,则它仅限于特定平台。

pub.dartlang.org 显示标签以相应地对已发布的包进行分类 (FLUTTER,WEB,OTHER)

Flutter 插件:

In short: Native related developments.

Flutter 插件是像 android(Kotlin 或 java)和 iOS(swift 或 objective c)这样的原生代码的包装器。 ... Flutter 可以通过使用平台通道和消息传递来完成本机应用程序可以做的任何事情。 Flutter 指示本机 iOS/Android 代码执行一个操作,并将结果 returns 发送给 Dart。

Flutter 包或模块:

In short: Make the development faster by using code from util libraries.

Flutter 支持使用其他开发者为 Flutter 和 Dart 生态系统贡献的共享包。这允许快速构建应用程序,而无需从头开始开发所有内容。