From 35d090fa86b851c7cea0d705540058ede330c216 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=82=96=E9=B9=8F=E9=A3=9E?= Date: Mon, 15 Apr 2019 21:03:05 +0800 Subject: [PATCH 1/3] feat: Open Android debug mode Open Android debug mode --- packages/webview_flutter/example/lib/main.dart | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/webview_flutter/example/lib/main.dart b/packages/webview_flutter/example/lib/main.dart index 0ec572956df7..358abf454193 100644 --- a/packages/webview_flutter/example/lib/main.dart +++ b/packages/webview_flutter/example/lib/main.dart @@ -64,6 +64,7 @@ class WebViewExample extends StatelessWidget { onPageFinished: (String url) { print('Page finished loading: $url'); }, + debug: true, ); }), floatingActionButton: favoriteButton(), From ff4a9e6844b12c6fd4730d2217561df41af72cf1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=82=96=E9=B9=8F=E9=A3=9E?= Date: Mon, 15 Apr 2019 21:06:25 +0800 Subject: [PATCH 2/3] add Open Android debug mode --- .../io/flutter/plugins/webviewflutter/FlutterWebView.java | 4 ++++ packages/webview_flutter/lib/webview_flutter.dart | 7 ++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/webview_flutter/android/src/main/java/io/flutter/plugins/webviewflutter/FlutterWebView.java b/packages/webview_flutter/android/src/main/java/io/flutter/plugins/webviewflutter/FlutterWebView.java index 21720cf6b4a2..5e8cb212d0ed 100644 --- a/packages/webview_flutter/android/src/main/java/io/flutter/plugins/webviewflutter/FlutterWebView.java +++ b/packages/webview_flutter/android/src/main/java/io/flutter/plugins/webviewflutter/FlutterWebView.java @@ -32,6 +32,10 @@ public class FlutterWebView implements PlatformView, MethodCallHandler { FlutterWebView(Context context, BinaryMessenger messenger, int id, Map params) { webView = new WebView(context); platformThreadHandler = new Handler(context.getMainLooper()); + boolean debug = (boolean) params.get("debug") || false; + + WebView.setWebContentsDebuggingEnabled(debug); + // Allow local storage. webView.getSettings().setDomStorageEnabled(true); diff --git a/packages/webview_flutter/lib/webview_flutter.dart b/packages/webview_flutter/lib/webview_flutter.dart index d67e769fb1bb..fb415d12af0b 100644 --- a/packages/webview_flutter/lib/webview_flutter.dart +++ b/packages/webview_flutter/lib/webview_flutter.dart @@ -117,6 +117,7 @@ class WebView extends StatefulWidget { this.navigationDelegate, this.gestureRecognizers, this.onPageFinished, + this.debug }) : assert(javascriptMode != null), super(key: key); @@ -204,6 +205,7 @@ class WebView extends StatefulWidget { /// directly in the HTML has been loaded and code injected with /// [WebViewController.evaluateJavascript] can assume this. final PageFinishedCallback onPageFinished; + final bool debug; @override State createState() => _WebViewState(); @@ -294,7 +296,7 @@ Set _extractChannelNames(Set channels) { class _CreationParams { _CreationParams( - {this.initialUrl, this.settings, this.javascriptChannelNames}); + {this.initialUrl, this.settings, this.javascriptChannelNames, this.debug}); static _CreationParams fromWidget(WebView widget) { return _CreationParams( @@ -302,6 +304,7 @@ class _CreationParams { settings: _WebSettings.fromWidget(widget), javascriptChannelNames: _extractChannelNames(widget.javascriptChannels).toList(), + debug: widget.debug ); } @@ -310,12 +313,14 @@ class _CreationParams { final _WebSettings settings; final List javascriptChannelNames; + final bool debug; Map toMap() { return { 'initialUrl': initialUrl, 'settings': settings.toMap(), 'javascriptChannelNames': javascriptChannelNames, + 'debug': debug }; } } From 7da2e46a5056c16e8970696cc5e818b5fee08801 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=82=96=E9=B9=8F=E9=A3=9E?= <1109614355@qq.com> Date: Tue, 16 Apr 2019 10:08:32 +0800 Subject: [PATCH 3/3] fix: fix format --- .../webview_flutter/lib/webview_flutter.dart | 38 ++++++++++--------- 1 file changed, 20 insertions(+), 18 deletions(-) diff --git a/packages/webview_flutter/lib/webview_flutter.dart b/packages/webview_flutter/lib/webview_flutter.dart index fb415d12af0b..e5477f218eb2 100644 --- a/packages/webview_flutter/lib/webview_flutter.dart +++ b/packages/webview_flutter/lib/webview_flutter.dart @@ -108,17 +108,17 @@ class WebView extends StatefulWidget { /// `onWebViewCreated` callback once the web view is created. /// /// The `javascriptMode` parameter must not be null. - const WebView({ - Key key, - this.onWebViewCreated, - this.initialUrl, - this.javascriptMode = JavascriptMode.disabled, - this.javascriptChannels, - this.navigationDelegate, - this.gestureRecognizers, - this.onPageFinished, - this.debug - }) : assert(javascriptMode != null), + const WebView( + {Key key, + this.onWebViewCreated, + this.initialUrl, + this.javascriptMode = JavascriptMode.disabled, + this.javascriptChannels, + this.navigationDelegate, + this.gestureRecognizers, + this.onPageFinished, + this.debug}) + : assert(javascriptMode != null), super(key: key); /// If not null invoked once the web view is created. @@ -296,16 +296,18 @@ Set _extractChannelNames(Set channels) { class _CreationParams { _CreationParams( - {this.initialUrl, this.settings, this.javascriptChannelNames, this.debug}); + {this.initialUrl, + this.settings, + this.javascriptChannelNames, + this.debug}); static _CreationParams fromWidget(WebView widget) { return _CreationParams( - initialUrl: widget.initialUrl, - settings: _WebSettings.fromWidget(widget), - javascriptChannelNames: - _extractChannelNames(widget.javascriptChannels).toList(), - debug: widget.debug - ); + initialUrl: widget.initialUrl, + settings: _WebSettings.fromWidget(widget), + javascriptChannelNames: + _extractChannelNames(widget.javascriptChannels).toList(), + debug: widget.debug); } final String initialUrl;