本文介绍了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.
已添加
- 使用邮递员检查网址
- 互联网也在正常运行
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的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!