快速优雅解决webview_flutter不能Safari调试的问题

这个问题,网上一搜,又是让你去检索WKWebView,找到FWFWebViewHostApi.m文件,然后再改 iOS 的代码, 加一行 self.inspectable = YES; 

我们开发Flutter项目,尽量还是不要去改插件里的代码,好了不费话了。

解决方法:

其实Flutter的Webview都是Native的,看看他的源码就知道了,iOS侧就是使用的WKWebView,然后它是通过 PlatformView 来进行渲染的。

所以,解决这个问题的方法就很明了了,打开Native的 Webview 的调试开关就行了。 

按我的习惯,我是不会去Native侧去写代码的,直接使用 webview_flutter 插件提供的方法来设置。

直接上代码: (Dart代码)

    if (Platform.isIOS) {
          final myDarwinController =
          _controller.platform as WebKitWebViewController;
          myDarwinController.setInspectable(true);
    }

小总结:

开发Flutter,遇到问题,第一时间还是去查一下,这个插件有没有提供我们想要的方法,如果它已经提供了,就不要去修改插件内的代码。 

你可能感兴趣的:(flutter)