Samaritan1011001 / Trovami

A live location sharing app built on Flutter and Firebase as backend
259 stars 108 forks source link

Clarify EmailId #22

Open alankley opened 3 years ago

alankley commented 3 years ago

What is a valid email id? I'm unable to use valid dynamic gmail addresses with special characters (+, .)

We should distinguish "correct" email address (what user provided) and correctly FORMED email addresses. If incorrectly formed we should display what format we expect as an error message

I recommend we refer to the email always as an email. I don't recommend we use it as an ID to identify a user in the database. The user might want to change their email. We CAN allow them to use it to login. Optionally we can offer a username. A username can be used in the UI to identify a user on the map, etc.

The ID of the user item in the database can be duplicated inside the User item and used as a unique key/id. It can serve as the key in Maps for convenient retrieval.

alankley commented 3 years ago

On Android, there is the following Pattern: public static final Pattern EMAILADDRESS = Pattern.compile( "[a-zA-Z0-9\+\.\\%\-\+]{1,256}" + "\@" + "[a-zA-Z0-9][a-zA-Z0-9\-]{0,64}" + "(" + "\." + "[a-zA-Z0-9][a-zA-Z0-9\-]{0,25}" + ")+" );

Valid Email on Android can be checked with: android.util.Patterns.EMAIL_ADDRESS.matcher(targetEmail).matches()