官方例子:
import 'dart:io';
import 'package:webview_flutter/webview_flutter.dart';
class WebViewExample extends StatefulWidget {
@override
WebViewExampleState createState() => WebViewExampleState();
}
class WebViewExampleState extends State<WebViewExample> {
@override
void initState() {
super.initState();
// Enable virtual display.
if (Platform.isAndroid) WebView.platform = AndroidWebView();
}
@override
Widget build(BuildContext context) {
return WebView(
initialUrl: 'https://flutter.dev',
);
}
}
这个例子WebView只填了initialUrl
既然是网页,怎么会少得了js,还默认是禁用状态。不友好设计!!!
所以WebView的加上JavascriptMode.unrestricted才能跑起来,不然会显示noscript标签的内容
WebView(
javascriptMode: JavascriptMode.unrestricted, // unrestricted: 无限制,disabled:禁用,这是默认状态
initialUrl: widget.url,
)
web page not avaliable
/android/app/src/main/AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET"/>
if (Platform.isAndroid) WebView.platform = AndroidWebView();
键盘弹不出来需要改成if (Platform.isAndroid) WebView.platform = SurfaceAndroidWebView();