webview_flutter2.0.13旧版本不能访问File:///xxx.html,提示 ERR_ACCESS_DENIED或文件找不到的解决办法
flutter项目\android\app\src\main\AndroidManifest.xml文件的application标签需要添加
android:usesCleartextTraffic="true"属性
在flutter_windows文件夹的内部寻找webview插件的位置,我的位置在E:\flutter_windows\flutter.pub-cache\hosted\pub.flutter-io.cn\webview_flutter-2.0.13\android\src\main\java\io\flutter\plugins\webviewflutter\WebViewBuilder.java
并修改WebViewBuilder.java文件,
修改内容是在public Webview build()方法中添加
webSettings.setAllowFileAccess(true); webSettings.setAllowFileAccessFromFileURLs(true);
如下图
然后重新打包即可
(注:不清缓存的话该方法是好用的,打包的时候最好检查一下WebviewBuilder.java文件)
附加:
设置webview内容的缩放以及自适应屏幕大小,需要在相同文件中添加以下代码
/--------------------------------------------------------
// 设置WebView的缩放支持
webSettings.setSupportZoom(true);
webSettings.setBuiltInZoomControls(false);
webSettings.setDisplayZoomControls(false);
// 设置WebView内容自适应屏幕大小
webSettings.setLoadWithOverviewMode(true);
webSettings.setUseWideViewPort(true);
------------------------------------------------------------/