Flutter WebView插件研究

Flutter 出來有幾個年頭了,目前還有不少問題,業內也在慢慢豐富各種插件來完善功能。
這裏詳細介紹 Flutter 中 WebView 的坑。

首先介紹下目前 pub 上常用的兩個插件:
1,webview_flutter 是官方維護的 WebView 插件,是基於PlatformView實現的,可以放到任何地方,特別靈活;
目前版本(0.3.20+2)優點:
1.1,因爲是基於PlatformView實現,所以靈活,可以存在多個WebView;
1.2,JS 和客戶端方法調用;
1.3,修改 UA;
缺點:
1.4,WebView的 Setting 設置不全,可能很多網頁加載有問題。
1.5,不支持添加 cookie ,但是支持清除 cookie;
(這個可以自己加代碼)

2,flutter_webview_plugin 則是基於原生 WebView 封裝的 Flutter 插件,只是在 FlutterView 上面蓋了一層 原生WebView控件,所以限制很多的
目前版本(0.3.11)優點:
2.1,WebView的 Setting 設置比較全,使用也簡單,如果只是單獨顯示下網頁,建議使用它;
2.2,JS 和客戶端方法調用;
2.3,修改 UA;
缺點:
2.4,因爲是封裝的,只存在一個 WebView,如果涉及到 WebView 不是單獨頁面的,會有很多問題;
2.5,不支持添加 cookie ,但是支持清除 cookie;

從上面總結的來看,2個或多或少都有些問題。所以具體看需求:
1,如果客戶端內用到的網頁都是單獨的一個頁面顯示都是 WebView,考慮用 flutter_webview_plugin,簡單方便。
2,如果客戶端某個TAB下就有一個WebView,建議複製 webview_flutter的源碼,搞個本地依賴,改下代碼,把需要支持的都支持下。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章