Curso App Minimarket con lector QR
¿Cómo programar un registro de usuarios en Android ?
Para programar un registro de usuarios usamos una API Rest que devuelve el resultado de insertar al usuario en la BD Mysql, con esta creamos una sesión en
Para programar un registro de usuarios usamos una API Rest que devuelve el resultado de insertar al usuario en la BD Mysql, con esta creamos una sesión en
activity_registro.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
tools:context=".RegistroActivity">
<LinearLayout
android:layout_width="match_parent"
android:orientation="vertical"
android:layout_margin="100dp"
android:gravity="center_horizontal"
android:layout_height="wrap_content">
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/txtnombre"
android:hint="Nombre:"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/txtemail"
android:hint="Email:"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<com.google.android.material.textfield.TextInputEditText
android:id="@+id/txtpassword"
android:hint="Password:"
android:inputType="textPassword"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<Button
android:id="@+id/btnregistro"
android:text="REGISTRO"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
</LinearLayout>
RegistroActivity.java
package com.example.minimarketqr;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
import com.google.android.material.textfield.TextInputEditText;
import com.loopj.android.http.AsyncHttpClient;
import com.loopj.android.http.JsonHttpResponseHandler;
import com.loopj.android.http.RequestParams;
import org.json.JSONException;
import org.json.JSONObject;
import cz.msebera.android.httpclient.Header;
public class RegistroActivity extends AppCompatActivity {
private Button btnregistro;
private TextInputEditText txtnombre,txtemail, txtpassword;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_registro);
setTitle("REGISTRO");
String sesion = GetSession();
if(!sesion.isEmpty()){
startActivity(new Intent(getApplicationContext(),CategoriasActivity.class));
finish();
}
btnregistro = findViewById(R.id.btnregistro);
txtnombre = findViewById(R.id.txtnombre);
txtemail = findViewById(R.id.txtemail);
txtpassword = findViewById(R.id.txtpassword);
btnregistro.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(txtnombre.getText().toString().isEmpty())
Toast.makeText(getApplicationContext(),"INGRESE NOMBRE", Toast.LENGTH_LONG).show();
else if(txtemail.getText().toString().isEmpty())
Toast.makeText(getApplicationContext(),"INGRESE EMAIL", Toast.LENGTH_LONG).show();
else if(txtpassword.getText().toString().isEmpty())
Toast.makeText(getApplicationContext(),"INGRESE PASSWORD", Toast.LENGTH_LONG).show();
else
registro(txtnombre.getText().toString(),txtemail.getText().toString(),txtpassword.getText().toString());
}
});
}
private void registro(String nombre, String email, String password){
// http
RequestParams params = new RequestParams();
params.put("registro",true);
params.put("nombre",nombre);
params.put("email",email);
params.put("password",password);
AsyncHttpClient client = new AsyncHttpClient();
client.post(Config.urlsite+"registro.php",params, new JsonHttpResponseHandler(){
@Override
public void onSuccess(int statusCode, Header[] headers, JSONObject response) {
super.onSuccess(statusCode, headers, response);
try {
if(response.getBoolean("success")){
SaveSession(response.getString("id"));
startActivity(new Intent(getApplicationContext(),CategoriasActivity.class));
Log.d("mensaje","Bienvenido"+response.getString("id"));
}else{
Log.d("mensaje","No se puedo registrar");
}
}catch (JSONException e){
e.printStackTrace();
}
}
@Override
public void onFailure(int statusCode, Header[] headers, Throwable throwable, JSONObject errorResponse) {
super.onFailure(statusCode, headers, throwable, errorResponse);
Log.d("mensaje error",errorResponse.toString());
}
});
}
private void SaveSession(String id){
SharedPreferences s = getSharedPreferences("user", Context.MODE_PRIVATE);
SharedPreferences.Editor e = s.edit();
e.putString("user",id);
e.apply();
}
private String GetSession(){
SharedPreferences s = getSharedPreferences("user",Context.MODE_PRIVATE);
return s.getString("user","");
}
}
1000 visitas
Descarga el código fuente del proyecto adquiriendo el curso completo
Comprar© Copyright Codea::App Cursos de Programación Online | LATAM | 2020 - 2024