flutter_jsbridge_x 1.0.0
flutter_jsbridge_x: ^1.0.0 copied to clipboard

use jsbridge to webview in flutter. No reliance on webview_flutter

Add JsBridge Plugin to the WebView #

A Flutter plugin that provides a JsBridge on WebView widget.

This plugin must introduce webview_flutter

Usage #

Add flutter_jsbridge_plugin as a dependency in your pubspec.yaml file.

dependencies:
  flutter_jsbridge_plugin: ^0.0.4

Init JsBridge and register handler #

...
final JsBridge _jsBridge = JsBridge();
...
WebView(
    initialUrl: "https://www.baidu.com?timeStamp=${new DateTime.now().millisecondsSinceEpoch}",
    javascriptMode: JavascriptMode.unrestricted,
    onWebViewCreated: (WebViewController webViewController) async {
        _jsBridge.loadJs(webViewController);
        _controller.complete(webViewController);
        _jsBridge.registerHandler("getToken", onCallBack: (data, func) {
            // return token to js
            func({"token": "token"});
        });
        _jsBridge.registerHandler("IAPpayment", onCallBack: (data, func) {
            print("js call flutter iap");
        });
        _jsBridge.registerHandler("back", onCallBack: (data, func) {
            print("js call flutter back");
        });
    },
    navigationDelegate: (NavigationRequest request) {
        if (_jsBridge.handlerUrl(request.url)) {
            return NavigationDecision.navigate;
        }
        return NavigationDecision.prevent;
    },
    onPageStarted: (url) {
        _jsBridge.init();
    },
))

JS Usage #

js file

1
likes
100
pub points
36%
popularity

use jsbridge to webview in flutter. No reliance on webview_flutter

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-3-Clause (LICENSE)

Dependencies

flutter, sprintf

More

Packages that depend on flutter_jsbridge_x