在使用InAppWebView或者原生WebView时,当网页调起键盘或者关闭键盘的情况下,网页内容会闪烁一次。为了解决这个问题,需要在AndroidManifest.xml中修改
android:windowSoftInputMode为adjustPan。
在新建flutter工程时android:windowSoftInputMode默认为adjustResize。在改为adjustPan,确实没有闪烁的现象了。
至于会不会影响resizeToAvoidBottomInset 的效果,后续可以测试一下
调起键盘闪退问题,将
classpath 'com.android.tools.build:gradle:4.1.1'
改为
classpath 'com.android.tools.build:gradle:4.1.0'
InAppWebView无法拉起键盘的问题
解决方案:设置useHybridComposition=true
InAppWebView 下载apk安装包适配方案,
设置参数
initialOptions: InAppWebViewGroupOptions(
crossPlatform: InAppWebViewOptions(useOnDownloadStart: true,)),
onDownloadStart()中处理下载,自己定义下载弹窗,进行下载,下载工具可使用r_upgrade插件。
安装包闪退:在onWebViewCreated里面设置Options
webView.setOptions( options: InAppWebViewGroupOptions( android: AndroidInAppWebViewOptions( useHybridComposition: true, ), crossPlatform: InAppWebViewOptions( useOnDownloadStart: true, javaScriptCanOpenWindowsAutomatically: true, javaScriptEnabled: true), ), );