title: next android activity
body: <p>I am beginner in android. I have a login and then I want to run the following file Mainscreenactivity but not how the login says ok but does not show after Mainscreenactivity</p>
  
  <p>login.java</p>
  
  <pre><code>        package test.Droidlogin;
      import java.util.ArrayList;
      import org.apache.http.NameValuePair;
      import org.apache.http.message.BasicNameValuePair;
      import org.json.JSONArray;
      import org.json.JSONException;
      import org.json.JSONObject;
      import test.Droidlogin.library.Httppostaux;
      import android.app.Activity;
      import android.app.ProgressDialog;
      import android.content.Context;
      import android.content.Intent;
      import android.net.Uri;
      import android.os.AsyncTask;
      import android.os.Bundle;
      import android.os.SystemClock;
      import android.os.Vibrator;
      import android.util.Log;
      import android.view.View;
      import android.widget.Button;
      import android.widget.EditText;
      import android.widget.TextView;
      import android.widget.Toast;
  
      public class Login extends Activity {
      /** Called when the activity is first created. */
  
      EditText user;
      EditText pass;
      Button blogin;
      TextView registrar;
      Httppostaux post;
      // String URL_connect="http://www.scandroidtest.site90.com/acces.php";
      String IP_Server="10.0.2.2";//IP DE NUESTRO PC
      String URL_connect="http://10.0.2.2/droidlogin/acces.php";//ruta en donde estan nuestros archivos
  
      boolean result_back;
      private ProgressDialog pDialog;
  
      @Override
      public void onCreate(Bundle savedInstanceState) {
  
          super.onCreate(savedInstanceState);
          setContentView(R.layout.main);
          post=new Httppostaux();
  
          user= (EditText) findViewById(R.id.edusuario);
          pass= (EditText) findViewById(R.id.edpassword);
          blogin= (Button) findViewById(R.id.Blogin);
          registrar=(TextView) findViewById(R.id.link_to_register);
  
          //Login button action
          blogin.setOnClickListener(new View.OnClickListener(){
  
              public void onClick(View view){
  
                  //Extreamos datos de los EditText
                  String usuario=user.getText().toString();
                  String passw=pass.getText().toString();
  
                  //verificamos si estan en blanco
                  if( checklogindata( usuario , passw )==true){
  
                      //si pasamos esa validacion ejecutamos el asynctask pasando el usuario y clave como parametros
  
                  new asynclogin().execute(usuario,passw);                               
  
  
                  }else{
                      //si detecto un error en la primera validacion vibrar y mostrar un Toast con un mensaje de error.
                      err_login();
                  }
  
              }
                                                              });
  
          registrar.setOnClickListener(new View.OnClickListener(){
  
              public void onClick(View view){
  
                  //Abre el navegador al formulario adduser.html
                  String url = "http://10.0.2.2/droidlogin/adduser.html";
                  Intent i = new Intent(Intent.ACTION_VIEW);
                  i.setData(Uri.parse(url));
                  startActivity(i);               
                                          }           
                                                                  });
  
      }
  
      //vibra y muestra un Toast
      public void err_login(){
          Vibrator vibrator =(Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
          vibrator.vibrate(200);
          Toast toast1 = Toast.makeText(getApplicationContext(),"Error:Nombre de usuario o password incorrectos", Toast.LENGTH_SHORT);
          toast1.show();      
      }
  
  
      /*Valida el estado del logueo solamente necesita como parametros el usuario y passw*/
      public boolean loginstatus(String username ,String password ) {
          int logstatus=-1;
  
  
          ArrayList&lt;NameValuePair&gt; postparameters2send= new ArrayList&lt;NameValuePair&gt;();
  
                      postparameters2send.add(new BasicNameValuePair("usuario",username));
                      postparameters2send.add(new BasicNameValuePair("password",password));
  
             //realizamos una peticion y como respuesta obtenes un array JSON
              JSONArray jdata=post.getserverdata(postparameters2send, URL_connect);
  
              /*como estamos trabajando de manera local el ida y vuelta sera casi inmediato
               * para darle un poco realismo decimos que el proceso se pare por unos segundos para poder
               * observar el progressdialog
               * la podemos eliminar si queremos
               */
              SystemClock.sleep(950);
  
              //si lo que obtuvimos no es null
                  if (jdata!=null &amp;&amp; jdata.length() &gt; 0){
  
                      JSONObject json_data; //creamos un objeto JSON
                      try {
                          json_data = jdata.getJSONObject(0); //leemos el primer segmento en nuestro caso el unico
                           logstatus=json_data.getInt("logstatus");//accedemos al valor 
                           Log.e("loginstatus","logstatus= "+logstatus);//muestro por log que obtuvimos
                      } catch (JSONException e) {
                          // TODO Auto-generated catch block
                          e.printStackTrace();
                      }                   
  
                      //validamos el valor obtenido
                       if (logstatus==0){// [{"logstatus":"0"}] 
                           Log.e("loginstatus ", "invalido");
                           return false;
                       }
                       else{// [{"logstatus":"1"}]
                           Log.e("loginstatus ", "valido");
                           return true;
                       }
  
                }else{    //json obtenido invalido verificar parte WEB.
                           Log.e("JSON  ", "ERROR");
                          return false;
                }
  
      }
  
  
      //validamos si no hay ningun campo en blanco
      public boolean checklogindata(String username ,String password ){
  
      if  (username.equals("") || password.equals("")){
          Log.e("Login ui", "checklogindata user or pass error");
      return false;
  
      }else{
  
          return true;
      }
  
  }           
  
      class asynclogin extends AsyncTask&lt; String, String, String &gt; {
  
          String user,pass;
          protected void onPreExecute() {
              //para el progress dialog
              pDialog = new ProgressDialog(Login.this);
              pDialog.setMessage("Autenticando....");
              pDialog.setIndeterminate(false);
              pDialog.setCancelable(false);
              pDialog.show();
          }
  
          protected String doInBackground(String... params) {
              //obtnemos usr y pass
              user=params[0];
              pass=params[1];
  
              //enviamos y recibimos y analizamos los datos en segundo plano.
              if (loginstatus(user,pass)==true){                      
                  return "ok"; //login valido
              }else{          
                  return "err"; //login invalido                    
              }
  
          }
  
          /*Una vez terminado doInBackground segun lo que halla ocurrido 
          pasamos a la sig. activity
          o mostramos error*/
          protected void onPostExecute(String result) {
  
             pDialog.dismiss();//ocultamos progess dialog.
             Log.e("onPostExecute=",""+result);
  
             if (result.equals("ok")){
  
                  Intent i=new Intent(Login.this, HiScreen.class);
                  i.putExtra("user",user);
                  startActivity(i); 
  
              }else{
                  err_login();
              }
  
                                                      }
  
          }
  
      }
  
  
  
  
      //-----------------------------------------------------------------------
  </code></pre>
  
  <p>MainscreenActivity.java</p>
  
  <pre><code>package test.Droidlogin;
  
  
  
  
  import android.app.Activity;
  import android.content.Intent;
  import android.os.Bundle;
  import android.view.View;
  import android.widget.Button;
  
  
  public class MainScreenActivity extends Activity{
  
  
  
      Button btnViewProducts;
      Button btnNewProduct;
  
      boolean result_back;
  
  
      @Override
      public void onCreate(Bundle savedInstanceState) {
  
  
  
  
  
  
          super.onCreate(savedInstanceState);
          setContentView(R.layout.main);
  
          // Buttons
          btnViewProducts = (Button) findViewById(R.id.btnViewProducts);
          btnNewProduct = (Button) findViewById(R.id.btnCreateProduct);
  
          // view products click event
          btnViewProducts.setOnClickListener(new View.OnClickListener() {
  
              @Override
              public void onClick(View view) {
                  // Launching All products Activity
                  Intent i = new Intent(getApplicationContext(), AllProductsActivity.class);
                  startActivity(i);
  
              }
          });
  
          // view products click event
          btnNewProduct.setOnClickListener(new View.OnClickListener() {
  
              @Override
              public void onClick(View view) {
                  // Launching create new product activity
                  Intent i = new Intent(getApplicationContext(), NewProductActivity.class);
                  startActivity(i);
  
              }
          });
      }
  }
  </code></pre>
  
  <p>Thanks! </p>