Yes, it is possible. When user creates his account send a auto generated password on his email and also in realtime database or firestore create a field status corresponding to users Uid and set default value to false. Also save that auto generated code in database. When user tries to login for the first time (check if status is false) then open a dialog and ask for the code send on email. if both code matches email verified change status to true else gives message incorrect code.
When the user login for the first time ask his email and password. Then verify it in auth module. If user exists then retrieve his data from realtime database and check if value of status is false or true. If value is false this means he is logging for the first time. So, open either a activity or a dialog which asks his code send on email. Then check if both code matches. If yes then this is the correct user. Send him to home activity and set the value of status to true in database.