Skip to content

Flutter Plugin that Renders Native Webview as a widget in flutter

License

Notifications You must be signed in to change notification settings

ponnamkarthik/FlutterWebView

Folders and files

NameName
Last commit message
Last commit date

Latest commit

35c9d74 · May 27, 2019

History

20 Commits
Jan 26, 2019
Dec 6, 2018
May 17, 2019
Jan 26, 2019
Jan 6, 2019
Jan 12, 2019
Sep 11, 2018
Jan 26, 2019
Dec 6, 2018
Jan 26, 2019
Dec 6, 2018
May 27, 2019
Jan 12, 2019
Jan 26, 2019

Repository files navigation

flutter_native_web

Native WebView as a widget in flutter

Inline WebView in flutter using AndroidView and UiKitView

Supported

  • Android
  • iOS

Note

  • onPageStarted, onPageFinished Only works with Android

Screenshot

Screenshot

How to Use

dependencies:
  flutter_native_web: "^1.0.2"
  
import 'package:flutter_native_web/flutterwebview.dart';
WebController webController;

FlutterWebView flutterWebView = new FlutterWebView(
  onWebCreated: onWebCreated,
);
 new Container(
    child: flutterWebViewString,
    height: 300.0,
    width: 500.0,
 ),
void onWebCreated(webController) {
    this.webController = webController;
    this.webController.loadUrl("https://facebook.com");
    this.webController.onPageStarted.listen((url) =>
        print("Loading $url")
    );
    this.webController.onPageFinished.listen((url) =>
        print("Finished loading $url")
    );
}

or

String html = '<body>Hello world! <a href="www.html5rocks.com">HTML5 rocks!';

void onWebCreated(webController) {
    this.webController = webController;
    this.webController.loadData(html);
    this.webController.onPageStarted.listen((url) =>
        print("Loading $url")
    );
    this.webController.onPageFinished.listen((url) =>
        print("Finished loading $url")
    );
}

Android

Ensure the following permission is present in your Android Manifest file, located in project /android/app/src/main/AndroidManifest.xml:

<uses-permission android:name="android.permission.INTERNET"/>

iOS

Opt-in to the embedded views preview by adding a boolean property to the app's Info.plist file with the key io.flutter.embedded_views_preview and the value YES.

	<key>io.flutter.embedded_views_preview</key>
	<string>YES</string>

Coming soon

  • JSInterface
  • more (suggest)