Регистрация и подтверждение email на Android с Back4App
В этом руководстве вы узнаете, как настроить процесс подтверждения электронной почты для функции регистрации пользователя (Регистрация). Вы создадите приложение, которое включает регистрацию пользователя с подтверждением электронной почты с использованием основных функций Parse Server через Back4App.
Этот учебник использует базовое приложение, созданное в Android Studio 4.1.1 с buildToolsVersion=30.0.3 , Compile SDK Version = 30 и targetSdkVersion 30
В любое время вы можете получить доступ к полному проекту через наши репозитории на GitHub.
Настройка процесса проверки электронной почты пользователя на Back4App для функции регистрации пользователя.
Чтобы завершить этот учебник, вам нужно:
На этом этапе мы импортируем библиотеки, которые будем использовать в нашем проекте:
- Добавьте следующие классы Parse в наши активности.
2. Вам нужно добавить Java 1.8 в наш проект через build.gradle(Module:App) потому что вы будете часто использовать лямбда-функции в этом проекте.
Теперь давайте включим проверку электронной почты на панели управления Back4App. Страница проверки электронной почты имеет два свойства: Проверить электронные адреса пользователей и Запретить вход, если электронный адрес не подтвержден. Если вы включите только опцию Проверить электронные адреса пользователей, пользователь получит электронное письмо для подтверждения, но сможет войти и использовать приложение нормально. Если вы также включите опцию "Запретить вход, если электронный адрес не подтвержден", пользователь сможет войти только после завершения процесса проверки электронной почты.
1. Перейдите в ваше приложение на Сайт Back4App и нажмите на Настройки сервера.
2. Найдите карточку “Письма для подтверждения” и нажмите на Настройки.

3. Нажмите на Подтвердить электронную почту пользователя и Запретить вход, если электронная почта не подтверждена.

4. По желанию: Заполните пустые поля и измените уже заполненные в соответствии с вашими предпочтениями.
5. Нажмите на кнопку СОХРАНИТЬ.
Два основных атрибута класса ParseUser это имя пользователя и пароль. Есть третий специальный атрибут, который вы также должны установить, т.е. электронная почта. Чтобы реализовать регистрацию с подтверждением электронной почты, вы будете использовать тот же метод, который вы использовали для реализации регистрации пользователя. Но на этот раз, вместо того чтобы перенаправить пользователя на экран входа, вы попросите пользователя подтвердить свою электронную почту для входа. После завершения процесса регистрации пользователь будет сохранен в базе данных. Данные пользователя будут доступны на Parse Dashboard с атрибутом mailVerified, установленным в false. Процесс подтверждения электронной почты состоит в проверке электронной почты пользователя и установке этого атрибута в true, чтобы пользователь мог полностью получить доступ ко всем ресурсам вашего приложения. Ваш экран регистрации будет выглядеть так:

Создайте SignUpActivity работу, следуя этим шагам: 1. Импортируйте в ваш SignUpActivity, в дополнение к зависимостям, импортированным в Шаг 1:
2. Реализуйте регистрацию пользователя, используя следующий код:
В примере проекта этот код доступен внутри КНОПКИ РЕГИСТРАЦИИ обратного вызова. Также имя пользователя, пароль и адрес электронной почты получаются с помощью полей ввода.
Вы можете добавить свой собственный код для проверки, является ли адрес электронной почты действительным, перед тем как установить его на фронтенде. Наконец, вы можете добавить свой собственный код для предоставления обратной связи.
После завершения регистрации мы увидим следующее сообщение… :

3. Интересно добавить дополнительный метод для отображения диалогов предупреждений и сделать процесс более профессиональным. Вот как вы можете это сделать:
После регистрации мы получим электронное письмо, похожее на это:

После проверки электронной почты свойство будет установлено в true:

После проверки электронной почты свойство будет установлено в true:

Чтобы реализовать вход с проверкой электронной почты, вы будете использовать тот же метод, который вы использовали для реализации базовой регистрации пользователя. Но на этот раз Parse проверит emailVerified булевый параметр перед тем, как предоставить дальнейший доступ пользователю.
Примечание: пользователь фактически входит в систему, когда вызывается функция ParseUser.logInInBackground(). Но он не может полностью получить доступ к приложению, пока проверка электронной почты не будет завершена, из-за объекта сессии, который создается в базе данных. Поэтому важно использовать ParseUser.logout() каждый раз, когда пользователь, не подтвердивший свою электронную почту, пытается получить доступ к приложению безуспешно, чтобы не оставлять Сессии открытыми.
Если вы включили опцию «Запретить вход, если электронная почта не подтверждена» на Шаге 2, вы получите следующую ошибку, если попытаетесь войти без подтверждения своей электронной почты.

Чтобы сделать LoginActivity работающим, выполните следующие шаги: 1. Импортируйте в ваш LoginActivity, в дополнение к зависимостям, импортированным в Шаг 1:
2. Для реализации функции входа пользователя просто используйте следующий код:
В примере проекта этот код размещен в доступном КНОПКЕ ВХОДА. Также имя пользователя и пароль захватываются с помощью Edit Texts.
Метод alertDisplayer такой же, как вы добавили в SignUpActivity, не забудьте изменить его Intent аргументы.
Чтобы реализовать выход пользователя, просто используйте код ниже, в LogoutActivity:
В примере проекта этот код доступен внутри КНОПКИ ВЫХОДА обратного вызова.
Метод alertDisplayer такой же, как вы добавили в LoginActivity и SignUpActivity, не забудьте изменить его Intent аргументы .
Запустите ваше приложение, создайте пару пользователей и попробуйте войти после регистрации без
1. Запустите ваше приложение, создайте пару пользователей и попробуйте войти после регистрации без подтверждения электронной почты, чтобы увидеть, отображается ли ошибка.
2. Войдите на Сайт Back4App.
3. Найдите ваше приложение и нажмите на Панель управления > Ядро > Браузер > Пользователь чтобы увидеть созданных вами пользователей!
На этом этапе вы можете войти, зарегистрироваться или выйти из вашего приложения, используя подтверждение электронной почты с основными функциями Parse Server через Back4App!