首页 > 解决方案 > Flutter 中是否会有来自本地资产 html 文件的离线 webview?

问题描述

我想这只是 Flutter 将本地网页呈现为 WebView Widget 的另一个功能请求 - 所有这些都离线并源自 html、css 和其他资产文件。

有几个 Flutter 插件能够从 URL(在线)显示 webView - 但我还没有看到从本地资产离线显示 WebView 的解决方案。

具有多个页面(放置在 Flutter 资产中的文件和文件夹)的典型网页如下所示:

index.html
page1.html
page2.html
/images/img1.jpg
/images/img2.jpg
/css/p1.css
/css/p2.css
etc.

我阅读了以下讨论(见下面的链接)和更多内容,但我不知道 Flutter 中是否存在离线 WebView Widget 的技术可能性。

我们必须等待插件团队来实现它只是时间问题——或者这在 Flutter 中永远不可能实现?在玩了 Flutter 5-6 周后,我希望得到一个比我能够掌握的更基本的答案。

这是我发现的有关该主题的一些讨论:

如何显示自定义 html 而不是 URL #23

从资产或本地文件加载 HTML #27086

标签: htmlwebviewflutterassets

解决方案


inAppWebView插件执行此过程以读取离线 html 文件或在线:

插件链接: https ://pub.dev/packages/flutter_inappwebview#-installing-tab-

例子:

InAppWebView(
    initialFile: "assets/index.html"
)

在 initialFile 中,您传递 Flutter 项目中的 HTML 文件的路径。


推荐阅读