项目中webview踩坑
shouldOverrideUrlLoading始终不执行问题
先说结果 最终还是没能解决 该方法不执行的问题
引用“
在这里说一下咱们重写的这个方法shouldOverrideUrlLoading有两种参数类型:
1、public boolean shouldOverrideUrlLoading(WebView view, String url);Android7.0后被废弃
2、 public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request);
”
这两方法试过了 依旧是不执行
个人解决思路是 
在
class ChromeClient extends WebChromeClient {
@Override
public void onProgressChanged(WebView view, int newProgress) {
//todo 处理想要跳转的原生界面逻辑 view.getUrl()当前页面地址
}
}
这个里面写跳转原生界面的逻辑 并且记录当前webview 加载的url , 存本地或者做缓存
然后再在activity的onResume方法里面加载这个url
这样从原生界面返回webview 还会显示跳转之前的页面。
博客探讨了在Android项目中遇到的WebView加载问题,特别是shouldOverrideUrlLoading方法不执行的困境。作者尝试了两种参数类型的重写方法,但未成功。为解决此问题,提出了通过WebChromeClient的onProgressChanged方法监听网页加载,并在Activity的onResume中恢复先前URL的方案,确保页面状态的正确恢复。
388

被折叠的 条评论
为什么被折叠?



