Boa tarde, Estou criando um aplicativo e estou com problema para desenvolver a tela de login. Eu até consegui fazer com que a tela funcionasse de forma correta, o problema esta no momento em que o usuário erra o "Login" e "Senha", pois assim que detecta o erro o aplicativo fecha. Aqui esta o código:
public class login extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
//pegar as variaveis de login e senha
final EditText Lusuario = findViewById(R.id.Lusuario);
final EditText Lsenha = findViewById(R.id.Lsenha);
final TextView tResposta = findViewById(R.id.txtResposta);
Button Lbutton = (Button) findViewById(R.id.Lbutton);
Lbutton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(Lusuario.length() > 0 && !Lusuario.getText().toString().equals("") && Lsenha.length() > 0 && !Lsenha.getText().toString().equals("")){
HTTPLogin service = new HTTPLogin(Lusuario.getText().toString(), Lsenha.getText().toString());
try {
Usuario retorno = service.execute().get();
if(!retorno.getUsuarioLogin().equals("") && !retorno.getUsuarioNome().equals("")){
//chamar nova activity
Intent Logar = new Intent(login.this, MainActivity.class);
// Logar.putExtra("Usuario", retorno);
startActivity(Logar);
}
else{
tResposta.setText("Login ou senha inválidos!");
}
} catch (ExecutionException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
});
}
//metodo para exibir mensagem na tela
private void alert(String s){
Toast.makeText(this, s, Toast.LENGTH_LONG).show();
}
}
Como disse, quando o retorno é positivo ele vai para a nova activity normalmente, porem quando usuário ou senha estão errado o aplicativo simplesmente fecha. Desde já agradeço a quem puder ajudar, dar uma dica.
Atenciosamente,