Webview 崩溃

今天在一个坑中到现在才爬出来。 Webview 直接在 sdk 22 (android 5)的手机上直接崩溃了。

这个问题怎么发现的呢,测试机器是没有22那么低的,我是设置了minSdk为22,vivo的市场免费测试的报告,说22上的机器crash了。我新建个模拟器果然是的。我建议以后最小版本改成23,这已经是很老的机器了。

问题必现环境:androidx,sdk 22 的模拟器或者设备,有WebView的地方,androidx 使用的是 androidx.appcompat:appcompat:1.1.0

解决办法:把1.1.0改成1.0.2 androidx.appcompat:appcompat:1.0.2

问题原因:androidx 1.1.0 的适配问题,sdk bug

等一下个版本出来了我们在更新试试看。我们要每年或者两年提高一个minSdk版本。太老的支持了没有用。

可能不想降低版本,心里阴影。那怎办呢。

在有WebView的Activity的Manifest文件中加入如下。android:configChanges="uiMode"

或者在Activity中加入如下代码

@Override public void applyOverrideConfiguration(final Configuration overrideConfiguration) { if (Build.VERSION.SDK_INT >= 21 && Build.VERSION.SDK_INT < 25) { overrideConfiguration.uiMode &= ~Configuration.UI_MODE_NIGHT_MASK; } super.applyOverrideConfiguration(overrideConfiguration); }

你可能感兴趣的:(Webview 崩溃)