flutter_plugin_webview 0.0.16

Flutter Android iOS

WebView flutter plugin

pub package

flutter_plugin_webview #

Plugin that allow Flutter to communicate with a native WebView.

Warning: The webview is not integrated in the widget tree, it is a native view on top of the flutter view. you won't be able to use snackbars, dialogs ...

Getting Started #

For help getting started with Flutter, view our online documentation.

How it works #

Launch WebView Fullscreen with Flutter navigation

new MaterialApp(
        routes: {
            "/": (_) => new WebViewScaffold(
                url: "https://www.google.com",
                appBar: new AppBar(
                title: new Text("Widget webview"),
            ),
        )
    },
);

WebViewPlugin.getInstance() provide a singleton instance linked to one unique webview, so you can take control of the webview from anywhere in the app

Listen to state change

Breaking changes version >= 0.0.12
WebViewState = {
        WebViewEvent event;
        String url;
    }

on event closed state = null

WebViewState.event = { WebViewEventLoadStarted | WebViewEventLoadFinished | WebViewEventError }

final webviewPlugin = WebViewPlugin.getInstance();  

webviewPlugin.onStateChange.listen((WebViewState state) {
    state.event //get the event
});

Close launched WebView

webviewPlugin.close();

Webview inside custom Rectangle

final webviewPlugin = WebViewPlugin.getInstance();  

webviewPlugin.luanch(
        url,
        rect: new Rect.fromLTWH(
        0.0,
        0.0,
        MediaQuery.of(context).size.width,
        300.0,
    ));

Don't forget to dispose webview flutterWebviewPlugin.dispose()

Webview Functions #

Future<Boolean> launch(String url, {
    Map<String, String> headers,
    bool enableJavaScript,
    bool clearCache,
    bool clearCookies,
    bool visible,
    Rect rect,
    String userAgent,
    bool enableZoom,
    bool enableLocalStorage,
    bool enableScroll,
    }
);
Future<String> evalJavascript(String code);
Future<Boolean> resize(Rect rect);
Future<Boolean> stopLoading();
Future<Boolean> refresh();
Future<Boolean> hasBack();
Future<Boolean> back();
Future<Boolean> hasForward();
Future<Boolean> forward();
Future<Boolean> clearCookies();
Future<Boolean> clearCache();
Future<Boolean> reloadUrl(String url);
0
likes
85
pub points
40%
popularity

WebView flutter plugin

Repository (GitHub)
View/report issues

Documentation

API reference

Uploader

codeplex99@gmail.com

License

Apache 2.0 (LICENSE)

Dependencies

flutter

More

Packages that depend on flutter_plugin_webview