之前通过判断CanGoBack来知晓是不是有二级页面,网页返回,不然关闭整个activity,但最近出现一个网页点返回后一次处在二级页面无法返回。经过查找发现:
Android 8.0开始WebView的shouldOverrideUrlLoading(WebView view, String url)返回值是false才会自动重定向,并且无需调用loadUrl,与8.0之前的效果刚好相反。
解决办法:
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
//Android 8.0以下版本的需要返回true 并且需要loadUrl()
if (Build.VERSION.SDK_INT < 26) {
view.loadUrl(url);
return true;
}
return false;
}