Я работаю над приложением, в котором пользователю предоставляются различные различные рабочие процессы аутентификации: один из них - регистрация пользователя по электронной почте / паролю. Итак, при регистрации с использованием электронной почты / пароля на электронную почту пользователя отправляется ссылка для подтверждения электронной почты. Когда пользователь щелкает эту ссылку, чтобы подтвердить свой адрес электронной почты, приложение должно перехватить эту ссылку и выполнить вызов серверной части. Есть идеи, как приложение может выполнять эту «ловлю»?
Захват подтверждения электронной почты нажмите и откройте приложение для Android
Ответы (1)
В прошлом мне приходилось сталкиваться с подобным рабочим процессом при разработке приложений для Android, и в том, как я с этим справлялся, использовалось что-то похожее на следующее:
- Новый пользователь регистрируется через приложение. Это создает новую запись пользователя в таблице базы данных пользователей на сервере. Есть «активный» столбец, для которого изначально установлено значение false.
- Регистрация также генерирует сообщение электронной почты с подтверждением. Сообщение содержит ссылку для активации, которая сама содержит своего рода токен UUID в качестве параметра GET. Этот же токен записывается в столбец пользовательской таблицы.
- Наконец, пользователь открывает электронное письмо, щелкает ссылку, и этот запрос GET активирует учетную запись пользователя, устанавливая для этого пользователя в столбце «active» значение true. Успешная активация также зависит от того, соответствует ли переданный токен тому, что написано в таблице.
Обратите внимание, что я предлагаю обрабатывать все это полностью вне вашего приложения для Android. Если у вас нет серверной части для вашего Android-приложения и вы планируете иметь какое-либо управление пользователями, подумайте о его создании.
Вы можете добавить ссылку на страницу успешной активации, которая затем запустится / вернется в ваше приложение Android. См. здесь для получения дополнительной информации.
person
Tim Biegeleisen
schedule
11.02.2019
Именно так с этим справляется бэкэнд-команда. Но моя проблема заключается в том, чтобы узнать, есть ли способ вернуться в приложение (даже если это просто домашний экран ...)?
- person Claude Hangui; 11.02.2019
Что ж, ссылка активации может указывать на / возвращать веб-страницу, которая затем содержит ссылку, которая возвращается в ваше приложение Android. Возможно, это сработает для вас?
- person Tim Biegeleisen; 11.02.2019
На самом деле я проверил с веб-командой (есть также веб-сайт), и действительно, когда пользователь нажимает ссылку активации из почты, упомянутый вами запрос GET, который активирует учетную запись, возвращает веб-страницу, информирующую пользователя, что он успешно активировал свою учетную запись. Ссылка, о которой вы говорите, должна быть размещена на веб-сайте, потому что я до сих пор не могу понять, как я вернусь в свое приложение.
- person Claude Hangui; 11.02.2019
@ClaudeHangui Да, он будет сгенерирован на сервере, но я хочу сказать, что, похоже, есть способ иметь встроенную ссылку, которая будет переключаться на ваше приложение. Так что здесь может быть способ делать то, что вы хотите.
- person Tim Biegeleisen; 11.02.2019