diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index aef0ca7..512228d 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -18,18 +18,19 @@ android:name=".ui.Inicial.Criar_conta" android:exported="false" /> + android:label="@string/app_name"> + - + \ No newline at end of file diff --git a/app/src/main/img_cuida-playstore.png b/app/src/main/img_cuida-playstore.png new file mode 100644 index 0000000..7f85490 Binary files /dev/null and b/app/src/main/img_cuida-playstore.png differ diff --git a/app/src/main/java/com/example/cuida/ui/Inicial/iniciar_sessao.java b/app/src/main/java/com/example/cuida/ui/Inicial/iniciar_sessao.java index 1e3ebf1..04bc27c 100644 --- a/app/src/main/java/com/example/cuida/ui/Inicial/iniciar_sessao.java +++ b/app/src/main/java/com/example/cuida/ui/Inicial/iniciar_sessao.java @@ -1,6 +1,7 @@ package com.example.cuida.ui.Inicial; import android.content.Intent; +import android.media.Image; import android.os.Bundle; import android.util.Log; import android.view.View; @@ -10,8 +11,6 @@ import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; -import androidx.activity.EdgeToEdge; -import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.core.graphics.Insets; import androidx.core.view.ViewCompat; @@ -19,61 +18,58 @@ import androidx.core.view.WindowInsetsCompat; import com.example.cuida.R; import com.example.cuida.ui.MainActivity; -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; public class iniciar_sessao extends AppCompatActivity { + private ImageView imageView; + private EditText emailEditText; private EditText palavraPasseEditText; private Button entrarButton; private Button criarContaButton; - private TextView bemVindoTextView; - private Button esqueciAPalavraPasseButton; + private TextView esqueciAPalavraPasseButton; private FirebaseAuth mAuth; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - EdgeToEdge.enable(this); setContentView(R.layout.activity_iniciar_sessao); - // Inicializar Firebase Auth mAuth = FirebaseAuth.getInstance(); - // Configuração do layout para Edge-to-Edge ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> { Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars()); v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom); return insets; }); - // Associar as Views imageView = findViewById(R.id.imageView); emailEditText = findViewById(R.id.emailEditText); palavraPasseEditText = findViewById(R.id.palavraPasseEditText); entrarButton = findViewById(R.id.entarButton); criarContaButton = findViewById(R.id.criarContaButton); - bemVindoTextView = findViewById(R.id.bemVindoTextView); + esqueciAPalavraPasseButton = findViewById(R.id.esqueciAPalavraPasseButton); + + + entrarButton.setOnClickListener(v -> iniciarSessao()); - // Definir o listener para o botão de criar conta criarContaButton.setOnClickListener(v -> { - // Chama o método para criar a conta - criarConta(); + Intent intent = new Intent(iniciar_sessao.this, Criar_conta.class); + startActivity(intent); + }); + + esqueciAPalavraPasseButton.setOnClickListener(v -> { + Intent intent = new Intent(iniciar_sessao.this, Esqueci_a_palavra_passe.class); + startActivity(intent); }); } - /** - * Método para criar uma nova conta de utilizador. - */ - private void criarConta() { + private void iniciarSessao() { String email = emailEditText.getText().toString().trim(); String password = palavraPasseEditText.getText().toString().trim(); - // 1. Validar as entradas do utilizador if (email.isEmpty()) { emailEditText.setError("O e-mail é obrigatório"); emailEditText.requestFocus(); @@ -86,40 +82,23 @@ public class iniciar_sessao extends AppCompatActivity { return; } - if (password.length() < 6) { - palavraPasseEditText.setError("A palavra-passe deve ter no mínimo 6 caracteres"); - palavraPasseEditText.requestFocus(); - return; - } - - // 2. Criar o utilizador no Firebase - mAuth.createUserWithEmailAndPassword(email, password) + mAuth.signInWithEmailAndPassword(email, password) .addOnCompleteListener(this, task -> { if (task.isSuccessful()) { - // Se o registo for bem-sucedido - Log.d("FIREBASE_AUTH", "createUserWithEmail:success"); - Toast.makeText(iniciar_sessao.this, "Conta criada com sucesso.", Toast.LENGTH_SHORT).show(); - - // Navega para a MainActivity + Log.d("FIREBASE_AUTH", "signInWithEmail:success"); + Toast.makeText(iniciar_sessao.this, "Login bem-sucedido.", Toast.LENGTH_SHORT).show(); navegarParaMainActivity(); - } else { - // Se o registo falhar - Log.w("FIREBASE_AUTH", "createUserWithEmail:failure", task.getException()); - // Mostra uma mensagem de erro mais específica - String errorMessage = task.getException() != null ? task.getException().getMessage() : "Erro desconhecido."; - Toast.makeText(iniciar_sessao.this, "Falha na autenticação: " + errorMessage, Toast.LENGTH_LONG).show(); + Log.w("FIREBASE_AUTH", "signInWithEmail:failure", task.getException()); + Toast.makeText(iniciar_sessao.this, "Falha na autenticação. Verifique suas credenciais.", Toast.LENGTH_LONG).show(); } }); } - /** - * Navega para a MainActivity e limpa a pilha de atividades. - */ private void navegarParaMainActivity() { Intent intent = new Intent(iniciar_sessao.this, MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); startActivity(intent); - finish(); // Finaliza a atividade atual + finish(); } -} +} \ No newline at end of file diff --git a/app/src/main/res/layout/activity_criar_conta.xml b/app/src/main/res/layout/activity_criar_conta.xml index 01e6cda..53fdf80 100644 --- a/app/src/main/res/layout/activity_criar_conta.xml +++ b/app/src/main/res/layout/activity_criar_conta.xml @@ -9,12 +9,108 @@ + + + + + + + + + + + + + +