本文介绍了com.android.volley.NoConnectionError:java.net.UnknownHostException的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我必须与Volly进行一些网络操作.我收到以下代码的com.android.volley.NoConnectionError:java.net.UnknownHostException.

i have to do some network operations with Volly. i am getting com.android.volley.NoConnectionError: java.net.UnknownHostException for below Code.

String url="https://www.user.url.in"


        JsonObjectRequest medStats = new JsonObjectRequest(Request.Method.PUT, url, object,
                new Response.Listener<JSONObject>() {
                    @Override
                    public void onResponse(JSONObject response) {
                        try {
                            Boolean success = response.getBoolean("success");
                            System.out.println("On Success" + success);

                            // Toast.makeText(getApplicationContext(),""+success,Toast.LENGTH_SHORT).show();
                            //String message=response.getString("message");

                        } catch (JSONException e) {
                            e.printStackTrace();
                        }
                    }
                }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {

                Toast.makeText(context, "Error from server : " + error.toString(), Toast.LENGTH_LONG).show();

                Toast.makeText(context,Boolean.toString(isNetworkAvailable()),Toast.LENGTH_LONG).show();

                String message = null;
                if (error instanceof NetworkError) {
                    message = "Cannot connect to Internet...Please check your connection!";
                    Toast.makeText(context,message,Toast.LENGTH_LONG).show();
                } else if (error instanceof ServerError) {
                    message = "The server could not be found. Please try again after some time!!";
                    Toast.makeText(context,message,Toast.LENGTH_LONG).show();
                } else if (error instanceof AuthFailureError) {
                    message = "Authentication Error!!";
                    Toast.makeText(context,message,Toast.LENGTH_LONG).show();
                } else if (error instanceof ParseError) {
                    message = "Parsing error! Please try again after some time!!";
                    Toast.makeText(context,message,Toast.LENGTH_LONG).show();
                } else if (error instanceof NoConnectionError) {
                    message = "Communication Error!!";
                    Toast.makeText(context,message,Toast.LENGTH_LONG).show();
                } else if (error instanceof TimeoutError) {
                    message = "Connection TimeOut! Please check your internet connection.";
                    Toast.makeText(context,message,Toast.LENGTH_LONG).show();
                }

            }
        }) {
            @Override
            public Map<String, String> getHeaders() throws AuthFailureError {
                HashMap<String, String> headers = new HashMap<String, String>();
                headers.put("Content-Type", "application/json; charset=utf-8");
                headers.put("x-access-token", token);
                return headers;
            }
        };

        requestQueue.add(medStats);

我的尝试:

检查清单文件:-1.

已添加

  1. 使用邮递员检查网址
  2. 互联网也在正常运行

Logcat详细信息:

Logcat Details:

10-01 23:20:33.913 18856-18856/user.com.test2 W/System.err: com.android.volley.NoConnectionError: java.net.UnknownHostException: Unable to resolve host "www.user.url.in": No address associated with hostname
10-01 23:20:33.913 18856-18856/user.com.test2 W/System.err:     at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:151)
10-01 23:20:33.913 18856-18856/user.com.test2 W/System.err:     at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:112)
10-01 23:20:33.914 18856-18856/user.com.test2 W/System.err: Caused by: java.net.UnknownHostException: Unable to resolve host "www.user.url.in": No address associated with hostname
10-01 23:20:33.914 18856-18856/user.com.test2 W/System.err:     at java.net.InetAddress.lookupHostByName(InetAddress.java:470)
10-01 23:20:33.914 18856-18856/user.com.test2 W/System.err:     at java.net.InetAddress.getAllByNameImpl(InetAddress.java:252)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at java.net.InetAddress.getAllByName(InetAddress.java:215)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.Network$1.resolveInetAddresses(Network.java:29)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.http.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:188)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.http.RouteSelector.nextProxy(RouteSelector.java:157)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.http.RouteSelector.next(RouteSelector.java:100)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.http.HttpEngine.createNextConnection(HttpEngine.java:357)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.http.HttpEngine.nextConnection(HttpEngine.java:340)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:330)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:248)
10-01 23:20:33.915 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:433)
10-01 23:20:33.916 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:114)
10-01 23:20:33.916 18856-18856/user.com.test2 W/System.err:     at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getOutputStream(HttpURLConnectionImpl.java:245)
10-01 23:20:33.916 18856-18856/user.com.test2 W/System.err:     at com.android.volley.toolbox.HurlStack.addBodyIfExists(HurlStack.java:264)
10-01 23:20:33.916 18856-18856/user.com.test2 W/System.err:     at com.android.volley.toolbox.HurlStack.setConnectionParametersForRequest(HurlStack.java:234)
10-01 23:20:33.916 18856-18856/user.com.test2 W/System.err:     at com.android.volley.toolbox.HurlStack.performRequest(HurlStack.java:107)
10-01 23:20:33.919 18856-18856/user.com.test2 W/System.err:     at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:96)
10-01 23:20:33.919 18856-18856/user.com.test2 W/System.err:     ... 1 more
10-01 23:20:33.919 18856-18856/user.com.test2 W/System.err: Caused by: android.system.GaiException: android_getaddrinfo failed: EAI_NODATA (No address associated with hostname)
10-01 23:20:33.919 18856-18856/user.com.test2 W/System.err:     at libcore.io.Posix.android_getaddrinfo(Native Method)
10-01 23:20:33.920 18856-18856/user.com.test2 W/System.err:     at libcore.io.ForwardingOs.android_getaddrinfo(ForwardingOs.java:55)
10-01 23:20:33.920 18856-18856/user.com.test2 W/System.err:     at java.net.InetAddress.lookupHostByName(InetAddress.java:451)
10-01 23:20:33.920 18856-18856/user.com.test2 W/System.err:     ... 18 more

推荐答案

setRetryPolicy()for volley也增加了timeOut和Retry计数.希望对您有所帮助.

setRetryPolicy() for volley also increase the timeOut and Retry counts. Hope it helps.

这篇关于com.android.volley.NoConnectionError:java.net.UnknownHostException的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-05 19:15