Skip to content Skip to sidebar Skip to footer

Email Validation On EditText In Android

I wrote following code for login but when I type '\' after email-id, it accepts and log in successfully (it doesn't accepts any other symbols or characters only accepts '\'). I don

Solution 1:

Inbuilt Patterns Provides Email Validation like:

if (!android.util.Patterns.EMAIL_ADDRESS.matcher(emailStr).matches() && !TextUtils.isEmpty(emailStr)) {
    emailEditText.setError("Invalid Email");
    emailEditText.requestFocus();
}

Solution 2:

Heyy, check this answer here: https://stackoverflow.com/a/7882950/1739882

It says:

public final static boolean isValidEmail(CharSequence target) {
    if (target == null) {
        return false;
    } else {
        return android.util.Patterns.EMAIL_ADDRESS.matcher(target).matches();
    }
}

Solution 3:

You can use this code for check is Valid Email or not:

public final static boolean isValidEmail(CharSequence target) {
     if (target == null) {
         return false;
     } else {
         return android.util.Patterns.EMAIL_ADDRESS.matcher(target).matches();
     }
}

Solution 4:

Best Approach

Validate email and isEmpty in one method.

 public final static boolean isValidEmail(CharSequence target)
 {
     return !TextUtils.isEmpty(target) && android.util.Patterns.EMAIL_ADDRESS.matcher(target).matches();
 }

Solution 5:

public static boolean isEmailValid(String email) {
        boolean isValid = false;

        String expression = "^[\\w\\.-]+@([\\w\\-]+\\.)+[A-Z]{2,4}$";
        CharSequence inputStr = email;

        Pattern pattern = Pattern.compile(expression, Pattern.CASE_INSENSITIVE);
        Matcher matcher = pattern.matcher(inputStr);
        if (matcher.matches()) {
            isValid = true;
        }
        return isValid;
    }

Post a Comment for "Email Validation On EditText In Android"