未知主机异常,无法解析主机。没有与主机名关联的地址

时间:2017-12-19 15:08:40

标签: java android android-volley

我正在Android上开发一个客户端服务器应用程序,我遇到了标题中的错误。我想要做的是使用Volley连接到我的桌面上通过IIS部署的C#服务器。

这是我遇到错误的代码(由于隐私原因,网址被编辑)。

 private void validate(final String userName,final String userPassword)
 {
    final ProgressDialog pDialog = new ProgressDialog(this);
    pDialog.setMessage("Loading...");
    pDialog.show();

    String tag_json_obj = "json_obj_req";
    String url = "http://hostname//urlExample/urlExample/urlExample/urlExample";
    StringRequest strReq = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
        @Override
        public void onResponse(String response)
        {
            if (response.compareTo("true") == 0)
            {
                pDialog.hide();
                Intent intent = new Intent(getBaseContext(), MainActivity.class);
                startActivity(intent);
            }
            else
            {
                pDialog.hide();
                AlertDialog alertDialog = new AlertDialog.Builder(LoginActivity.this).create();
                alertDialog.setTitle("Can't login");
                alertDialog.setMessage("Invalid username or password");
                alertDialog.setButton(AlertDialog.BUTTON_NEUTRAL, "OK",
                        new DialogInterface.OnClickListener() {
                            public void onClick(DialogInterface dialog, int which) {
                                dialog.dismiss();
                            }
                        });
                alertDialog.show();
            }
        }
    }, new Response.ErrorListener() {

        @Override
        public void onErrorResponse(VolleyError error)
        {
            Log.e("ERROR", "Error occurred ", error);
            pDialog.hide();
        }
    })
    {
        @Override
        protected Map<String,String> getParams()
        {
            Map<String, String> params = new HashMap<>();
            params.put("username", userName);
            params.put("password", userPassword);

            return params;
        }

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

    };
    AppController.getInstance().addToRequestQueue(strReq, tag_json_obj);
}

在URL字段中,它写有“hostname”,我的Windows桌面主机名取自ipconfig / all。如果我尝试访问它,URL可以在我的PC上运行,但它在我的手机上不起作用,甚至在浏览器中也不起作用。

我已在我的清单文件中添加了android.permission.INTERNET和android.permission.ACCESS_NETWORK_STATE。我没有激活VPN,我不使用自定义DNS或让我的手机生根,我检查了互联网是否工作,手机和PC都连接到同一个路由器,两者都使用相同的DNS。我不知道我还能做些什么。

0 个答案:

没有答案