Android获取WebView加载url的请求错误码 【推荐】

发布时间:2019-08-08 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Android获取WebView加载url的请求错误码 【推荐】脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

例如需求,我有一个WebView 加载一个url, 该url对应的网页本身自带下拉刷新 ,但是网页本身会有出现400 500 等异常请求错误码

这时候网页加载失败,页面本身的下拉是无法使用的,要求重新加载页面的话就需要在webview外层套一个android下拉控件(SwiPERefreshLayout)

这样导致下拉一定用的SwipeRefreshLayout的下拉

最终要求是如果页面加载成功的话,用页面本身的下拉,如果页面加载失败的话,用andROId下拉控件的下拉

--------------------------------------------------------------------------------------------------------------------------------------------

解决办法就是监听加载的url的请求的错误码,对SwipeRefreshLayout.setEnabled() 来控制是否允许下拉刷新

监听对应6.0+  6.0以下 分别为两种实现方式:

一、Android 6.0+ 判断请求码

     mWebView.setWebViewClient(new WebViewClient() {       // .....       @@R_360_654@       public void onReceivedHttpError(WebView view, WebresourceRequest request, WebResourceResponse errorResponse) {         super.onReceivedHttpError(view, request, errorResponse);         if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {           if (errorResponse.getstatusCode() == 500 ){             refresh.setEnabled(true); // 放开下拉           }           LOGUtils.i(TAG, "onReceivedHttpError:"+ errorResponse.getStatusCode());         }       }     });

二、Android 6.0以下 判断请求码

 mWebView.setWebChromeClient(new WebChromeClient() {       // .....       @Override       public void onReceivedTITle(WebView view, String title) {         super.onReceivedTitle(view, title);         if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {           if (title.contains("500")) {             refresh.setEnabled(true);           }         }       }     });  

 总结

android教程
脚本网站
android studio

脚本宝典总结

以上是脚本宝典为你收集整理的Android获取WebView加载url的请求错误码 【推荐】全部内容,希望文章能够帮你解决Android获取WebView加载url的请求错误码 【推荐】所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。