Захват подтверждения электронной почты нажмите и откройте приложение для Android

Я работаю над приложением, в котором пользователю предоставляются различные различные рабочие процессы аутентификации: один из них - регистрация пользователя по электронной почте / паролю. Итак, при регистрации с использованием электронной почты / пароля на электронную почту пользователя отправляется ссылка для подтверждения электронной почты. Когда пользователь щелкает эту ссылку, чтобы подтвердить свой адрес электронной почты, приложение должно перехватить эту ссылку и выполнить вызов серверной части. Есть идеи, как приложение может выполнять эту «ловлю»?


person Claude Hangui    schedule 11.02.2019    source источник


Ответы (1)


В прошлом мне приходилось сталкиваться с подобным рабочим процессом при разработке приложений для Android, и в том, как я с этим справлялся, использовалось что-то похожее на следующее:

  • Новый пользователь регистрируется через приложение. Это создает новую запись пользователя в таблице базы данных пользователей на сервере. Есть «активный» столбец, для которого изначально установлено значение false.
  • Регистрация также генерирует сообщение электронной почты с подтверждением. Сообщение содержит ссылку для активации, которая сама содержит своего рода токен UUID в качестве параметра GET. Этот же токен записывается в столбец пользовательской таблицы.
  • Наконец, пользователь открывает электронное письмо, щелкает ссылку, и этот запрос GET активирует учетную запись пользователя, устанавливая для этого пользователя в столбце «active» значение true. Успешная активация также зависит от того, соответствует ли переданный токен тому, что написано в таблице.

Обратите внимание, что я предлагаю обрабатывать все это полностью вне вашего приложения для Android. Если у вас нет серверной части для вашего Android-приложения и вы планируете иметь какое-либо управление пользователями, подумайте о его создании.

Вы можете добавить ссылку на страницу успешной активации, которая затем запустится / вернется в ваше приложение Android. См. здесь для получения дополнительной информации.

person Tim Biegeleisen    schedule 11.02.2019
comment
Именно так с этим справляется бэкэнд-команда. Но моя проблема заключается в том, чтобы узнать, есть ли способ вернуться в приложение (даже если это просто домашний экран ...)? - person Claude Hangui; 11.02.2019
comment
Что ж, ссылка активации может указывать на / возвращать веб-страницу, которая затем содержит ссылку, которая возвращается в ваше приложение Android. Возможно, это сработает для вас? - person Tim Biegeleisen; 11.02.2019
comment
На самом деле я проверил с веб-командой (есть также веб-сайт), и действительно, когда пользователь нажимает ссылку активации из почты, упомянутый вами запрос GET, который активирует учетную запись, возвращает веб-страницу, информирующую пользователя, что он успешно активировал свою учетную запись. Ссылка, о которой вы говорите, должна быть размещена на веб-сайте, потому что я до сих пор не могу понять, как я вернусь в свое приложение. - person Claude Hangui; 11.02.2019
comment
@ClaudeHangui Да, он будет сгенерирован на сервере, но я хочу сказать, что, похоже, есть способ иметь встроенную ссылку, которая будет переключаться на ваше приложение. Так что здесь может быть способ делать то, что вы хотите. - person Tim Biegeleisen; 11.02.2019