Android与Volley:无法解析主机

时间:2015-09-19 14:32:01

标签: android android-volley android-networking

我正在尝试连接到团队中其他开发人员为我提供的服务器。我正在使用Volley,但仍然是初学者。

在服务器上,在API文件夹内的用户文件夹中有一个注册方法。我需要能够从我的Android应用程序中调用此方法才能注册新用户。

这是我正在使用的代码。

try {

    Request request = new Request(Request.Method.POST, url + "/user/register", new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    Toast.makeText(getApplicationContext(), error.getMessage(), Toast.LENGTH_LONG).show();
                }
            }) {
                @Override
                protected Response parseNetworkResponse(NetworkResponse response) {
                    Toast.makeText(getApplicationContext(), "ParseNetworkRequest", Toast.LENGTH_LONG).show();
                    return null;
                }
            @Override
            protected void deliverResponse(Object response) {
                Toast.makeText(getApplicationContext(), "DeliverResponse", Toast.LENGTH_LONG).show();
            }

            @Override
            public int compareTo(Object another) {
                return 0;
            }

            @Override
            protected Map<String, String> getParams() throws AuthFailureError {
                Map<String, String> params = new HashMap<>();
                // POST Parameters
                params.put("api_key", API_KEY);
                params.put("email", etEmail.getText().toString());
                params.put("password", etPassword.getText().toString());
                params.put("verifyPassword", etConfirmPass.getText().toString());
                params.put("firstname", etFirstName.getText().toString());
                params.put("lastname", etLastName.getText().toString());
                params.put("birthday", birthDate);
                return params;
            }
        };

        Volley.newRequestQueue(this).add(request);

我得到的错误。

com.android.volley.NoConnectionError: java.net.UnknownHostException: Unable to resolve host "<url>": No address associated with hostname

我的manifest.xml中的权限,因为之前提出的大多数问题都是通过添加这些行来解决的,在我的情况下不起作用。

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="ANDROID.PERMISSION.ACCESS_NETWORK_STATE" />

请注意,我尝试使用RequestString类,但我得到了同样的错误,但是当我尝试使用另一个url(“http://google.com”)时,我收到服务器错误,这有点好,因为我们知道这是为什么。

1 个答案:

答案 0 :(得分:0)

使用不同类型的连接解决了这个问题,我尝试使用3G运行该应用程序并且运行良好。