DataCamp Light无法在Flutter WebView中工作

时间:2019-12-20 12:17:25

标签: r flutter webview flutterwebviewplugin

我正在编写一个在Flutter中显示WebView的应用程序。为此,我将webview_flutter软件包添加到了pubspec.yaml中,如下所示:

  dependencies:
    webview_flutter: "^0.3.18+1"

我要显示以下网址:https://cran.r-project.org/web/packages/tutorial/vignettes/tutorial-basics.html

所以我做了以下事情:

class WebViewExample extends StatelessWidget {

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
        body: Container(
            child: WebView(
              initialUrl: 'https://cran.r-project.org/web/packages/tutorial/vignettes/tutorial-basics.html',
              javascriptMode: JavascriptMode.unrestricted,
              userAgent: "Google Chrome Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36.",
            )
        )
    );

  }
}

除我尝试运行R代码外,其他所有操作均按预期进行。尽管在浏览器中运行良好,但Datacamp小提琴试图设置工作区,但我得到:“ 您的会话已断开连接”。

enter image description here

我也尝试了flutter_webview_plugin,但结果相同。

有人建议运行吗?

1 个答案:

答案 0 :(得分:0)

您可以为WebView使用完成器,并在onWebViewCreated()中使用它

final Completer<WebViewController> _controller =Completer<WebViewController>();
WebView(
      initialUrl: selectedUrl,
      javascriptMode: JavascriptMode.unrestricted,
      onWebViewCreated: (WebViewController webViewController) {
        _controller.complete(webViewController);
      },
    )