如何在android中的localhost上测试简单的后端程序?

时间:2014-10-13 09:53:53

标签: php android

我制作了非常简单的后端程序(它只发送简单的请求)但是,它发生错误。

这是我的前端代码。

公共类MainActivity扩展了Activity {

String url = "http://localhost:8080/test.php";
RequestQueue mRequestQueue;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button send = (Button)findViewById(R.id.button1);
    send.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
         mRequestQueue = Volley.newRequestQueue(getApplicationContext());
         JsonObjectRequest jsonObjReq = new JsonObjectRequest(Method.GET, url, null,
            new Response.Listener<JSONObject>() {
                @Override
                public void onResponse(JSONObject response) {
                    Log.e("login.java response", response.toString());

                    int l=  response.length();
                    try {
                        if(l>1){
                            Toast.makeText(getApplicationContext(), response.getString("valid"), Toast.LENGTH_LONG).show();
                        }

                        else{               

                        }   
                    } catch (JSONException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }
            }, 

            new Response.ErrorListener() {
                @Override
                public void onErrorResponse(VolleyError error) {
                    VolleyLog.d("error", "Error: " + error.getMessage());
                    // hide the progress dialog
                    Toast.makeText(getApplicationContext(), "Server Error, try again", Toast.LENGTH_LONG).show();
                }
            });

        // Adding request to request queue
             mRequestQueue.add(jsonObjReq);
        }
    });
}

}

后端代码。

echo json_encode(&#34; return&#34;);

它的路径:&#34; c:\ wamp \ www \ test.php&#34;。 如果我运行此程序,它会显示&#34;服务器错误,再试一次&#34;。

我可以得到&#34;返回&#34;在网络浏览器上,所以我认为android程序中的url存在问题。 我关闭了Windows防火墙,但它也没有工作。

是否有人对此问题有丰富的经验并可以帮助我?

2 个答案:

答案 0 :(得分:1)

您应该为Android应用提供运行服务器的计算机的实际IP地址。您可以通过键入控制台ipconfig(对于Windows),对于UNIX系统ifconfig来学习您的IP。 它很可能是192.168.1.xxx172.16.xxx.xxx

答案 1 :(得分:0)

您需要将网址更改为您的IP地址,而不是

"http://localhost:8080/test.php";

使用您的本地IP地址(例如):

"http://192.168.0.1:8080/test.php";