Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.gamecodeschool.parcial;
- import androidx.annotation.NonNull;
- import androidx.annotation.Nullable;
- import androidx.appcompat.app.AppCompatActivity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.View;
- import android.widget.TextView;
- import android.widget.Toast;
- import com.google.android.gms.auth.api.Auth;
- import com.google.android.gms.auth.api.signin.GoogleSignInOptions;
- import com.google.android.gms.auth.api.signin.GoogleSignInResult;
- import com.google.android.gms.common.ConnectionResult;
- import com.google.android.gms.common.api.GoogleApiClient;
- import com.google.android.gms.tasks.OnCompleteListener;
- import com.google.android.gms.tasks.Task;
- import com.google.firebase.auth.AuthResult;
- import com.google.firebase.auth.FirebaseAuth;
- import com.google.firebase.auth.FirebaseUser;
- public class Login extends AppCompatActivity implements GoogleApiClient.OnConnectionFailedListener {
- private FirebaseAuth mAuth;
- private TextView txtUser, txtPass;
- private GoogleApiClient googleApiClient;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_login);
- txtUser = (TextView) findViewById(R.id.txtUser2);
- txtPass = (TextView) findViewById(R.id.txtPass2);
- // Initialize Firebase Auth
- mAuth = FirebaseAuth.getInstance();
- //Google
- GoogleSignInOptions googleSignInOptions = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
- .requestEmail()
- .build();
- googleApiClient = new GoogleApiClient.Builder(this).enableAutoManage(this,this)
- .addApi(Auth.GOOGLE_SIGN_IN_API, googleSignInOptions).build();
- }
- @Override
- public void onStart() {
- super.onStart();
- // Check if user is signed in (non-null) and update UI accordingly.
- FirebaseUser currentUser = mAuth.getCurrentUser();
- if (currentUser != null)
- Toast.makeText(this, currentUser.getEmail(), Toast.LENGTH_SHORT).show();
- }
- public void entrarAlSitema(View view){
- String email = txtUser.getText().toString();
- String password = txtPass.getText().toString();
- if (email.isEmpty() || password.isEmpty()){
- Toast.makeText(this, "Llena los campos", Toast.LENGTH_SHORT).show();
- return;
- }
- mAuth.signInWithEmailAndPassword(email,password).addOnCompleteListener(new OnCompleteListener<AuthResult>() {
- @Override
- public void onComplete(@NonNull Task<AuthResult> task) {
- if (task.isSuccessful()){
- FirebaseUser user = mAuth.getCurrentUser();
- String email = user.getEmail();
- if (email.equals("admin@gmail.com")){
- entrarAlMain();
- }else{
- Intent fromLoginToUser =new Intent(getApplicationContext(),VistaUsuario.class);
- startActivity(fromLoginToUser);
- finish();
- }
- }else {
- Toast.makeText(Login.this, "Datos incorrectos", Toast.LENGTH_SHORT).show();
- }
- }
- });
- }
- public void recuperarPass(View view) {
- String user = txtUser.getText().toString();
- if (!user.equals("")) {
- mAuth.sendPasswordResetEmail(user).addOnCompleteListener(new OnCompleteListener<Void>() {
- @Override
- public void onComplete(@NonNull Task<Void> task) {
- if (task.isSuccessful()){
- Toast.makeText(Login.this, "Se ha enviado un correo electrónico a la dirección especificada", Toast.LENGTH_SHORT).show();
- }
- }
- });
- } else {
- Toast.makeText(this, "Ingrese tu correo electrónico", Toast.LENGTH_SHORT).show();
- }
- }
- public void loginGoogle(View view){
- Intent googleIntent = Auth.GoogleSignInApi.getSignInIntent(googleApiClient);
- startActivityForResult(googleIntent,2020);
- }
- protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data){
- super.onActivityResult(requestCode, resultCode, data);
- if (requestCode == 2020){
- GoogleSignInResult result = Auth.GoogleSignInApi.getSignInResultFromIntent(data);
- handleSignInResult(result);
- }
- }
- private void handleSignInResult(GoogleSignInResult result){
- if(result.isSuccess()){
- entrarAlMain();
- } else{
- Toast.makeText(this, "Ha sucedido un error", Toast.LENGTH_LONG).show();
- }
- }
- @Override
- public void onConnectionFailed(@NonNull ConnectionResult connectionResult) {
- }
- private void entrarAlMain(){
- Intent fromLoginToAdmin = new Intent(getApplicationContext(), MainActivity.class );
- startActivity(fromLoginToAdmin);
- finish();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement