¿Cómo hacer una publicación HTTP en Android?

Soy nuevo en el desarrollo de aplicaciones para Android, lo que necesito es tener dos nombres de usuario y contraseñas, publicarlo en el servidor y verificarlo con la base de datos usando una página php, si el acceso es exitoso, vaya a la siguiente pantalla, de lo contrario, muestre un cuadro de mensaje mostrando error de inicio de sesión ¿cómo puedo hacer eso?

public void postData() { // Create a new HttpClient and Post Header HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("http://google.com"); EditText tw =(EditText) findViewById(R.id.EditText01); try { // Add your data List nameValuePairs = new ArrayList(2); nameValuePairs.add(new BasicNameValuePair("id", "12345")); nameValuePairs.add(new BasicNameValuePair("stringdata", "AndDev is Cool!")); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); // Execute HTTP Post Request HttpResponse response = httpclient.execute(httppost); int status = response.getStatusLine().getStatusCode(); tw.setText(status); } catch (ClientProtocolException e) { tw.setText(e.toString()); } catch (IOException e) { tw.setText(e.toString()); } } 

Use esta clase:

 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.OutputStreamWriter; import java.net.HttpURLConnection; import java.net.URL; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class HttpLogin extends Activity { /** Called when the activity is first created. */ private Button login; private EditText username, password; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); login = (Button) findViewById(R.id.login); username = (EditText) findViewById(R.id.username); password = (EditText) findViewById(R.id.password); login.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { String mUsername = username.getText().toString(); String mPassword = password.getText().toString(); tryLogin(mUsername, mPassword); } }); } protected void tryLogin(String mUsername, String mPassword) { HttpURLConnection connection; OutputStreamWriter request = null; URL url = null; String response = null; String parameters = "username="+mUsername+"&password="+mPassword; try { url = new URL("your login URL"); connection = (HttpURLConnection) url.openConnection(); connection.setDoOutput(true); connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded"); connection.setRequestMethod("POST"); request = new OutputStreamWriter(connection.getOutputStream()); request.write(parameters); request.flush(); request.close(); String line = ""; InputStreamReader isr = new InputStreamReader(connection.getInputStream()); BufferedReader reader = new BufferedReader(isr); StringBuilder sb = new StringBuilder(); while ((line = reader.readLine()) != null) { sb.append(line + "\n"); } // Response from server after login process will be stored in response variable. response = sb.toString(); // You can perform UI operations here Toast.makeText(this,"Message from Server: \n"+ response, 0).show(); isr.close(); reader.close(); } catch(IOException e) { // Error } } } 

main.xml será así:

 < ?xml version="1.0" encoding="utf-8"?>      

Puede usar HttpClient para realizar solicitudes POST. Vea un ejemplo aquí .