Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/221.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
OnReceivedHttPeror:支持android版本<;23_Android - Fatal编程技术网

OnReceivedHttPeror:支持android版本<;23

OnReceivedHttPeror:支持android版本<;23,android,Android,我正在研究一个加载url的解决方案。我需要获取Http错误,以便重新加载url以创建新会话 @Override public void onReceivedHttpError(WebView view, WebResourceRequest request, WebResourceResponse errorResponse) { super.onReceivedHttpError(view, request, errorResponse);

我正在研究一个加载url的解决方案。我需要获取Http错误,以便重新加载url以创建新会话

@Override
   public void onReceivedHttpError(WebView view, WebResourceRequest request, WebResourceResponse errorResponse) {
            super.onReceivedHttpError(view, request, errorResponse);
            Toast.makeText(getActivity(), "Unexpected error occurred.Reload page again.", Toast.LENGTH_SHORT).show();
            if(errorResponse.getStatusCode() == 401){
                customWebView.loadUrl(url);
            }
        }
但上述代码的问题是,它是从棉花糖工作。有谁能给我建议一个解决方案,让我在安卓版本<23以下出现错误吗?

通知主机应用程序在加载资源时从服务器接收到HTTP错误

有谁能给我一个解决方案,让我在安卓系统下出错 版本<23

onreceivedhttperor
添加到
API级别23
中。因此,它在23岁以下不起作用

试一试

.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageFinished(WebView view, String url) {
        }

        @Override
        public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {

        /*if(Build.VERSION.SDK_INT<23)
         {
            // You work
         }*/
        }

        @Override
        public void onReceivedHttpError(
                WebView view, WebResourceRequest request, WebResourceResponse errorResponse) {

        /*if(Build.VERSION.SDK_INT >= 23)
            {
                 // Your Work
            }*/
        }

        @Override
        public void onReceivedSslError(WebView view, SslErrorHandler handler,
                                       SslError error) {
        }
    });
.setWebViewClient(新的WebViewClient(){
@凌驾
公共void onPageFinished(WebView视图,字符串url){
}
@凌驾
接收错误时公共无效(WebView视图、WebResourceRequest请求、WebResourceError错误){
/*if(Build.VERSION.SDK_INT=23)
{
//你的作品
}*/
}
@凌驾
在ReceivedSlerRor(WebView视图、SslErrorHandler、,
SslError(错误){
}
});
FYI

此方法在API级别23中被弃用。使用 onReceivedError(WebView、WebResourceRequest、WebResourceError) 相反


那么这个问题还有其他解决办法吗?@ABHI善意地检查一下@Amiya我已经看过那个帖子了。我只需要一个解决方案来实现android版本<23@ABHI有什么反馈吗?我试了几次,但没有找到任何实质性的解决办法。所以现在我在覆盖方法上加了一些条件来满足我的条件。
.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageFinished(WebView view, String url) {
        }

        @Override
        public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {

        /*if(Build.VERSION.SDK_INT<23)
         {
            // You work
         }*/
        }

        @Override
        public void onReceivedHttpError(
                WebView view, WebResourceRequest request, WebResourceResponse errorResponse) {

        /*if(Build.VERSION.SDK_INT >= 23)
            {
                 // Your Work
            }*/
        }

        @Override
        public void onReceivedSslError(WebView view, SslErrorHandler handler,
                                       SslError error) {
        }
    });