Определяем UUID, ищем в базе этот UUID.
При отсутствии этого UUID: привязываем к первому E-MAIL (вручную: логин+пароль или OAUTH) и отправляем на сервер, затем просим ввести желаемый LOGIN в системе.
К LOGIN привязываем UUID.
Получается связка: LOGIN->UUID->E-MAIL
При входе из другой соц.сети: по UUID также кладёте новую почту на сервер.
При входе с почтовым адресом - определяете UUID на основе имеющейся почты (дочерние элементы) и дальше - разветвление:
1. ОДИН метод - авторизация через него.
2. НЕСКОЛЬКО (несколько соц.сетей OAUTH, пароль) - выводим список возможных методов (НЕ E-MAIL-ОВ!)
В общем, структура в итоге для одного аккаунта:
LOGIN->[UUID-1]->[E-MAIL-1]
.............................
LOGIN->[UUID-1]->[E-MAIL-N]
.............................
LOGIN->[UUID-N]->[E-MAIL-N]
Структура позволит зайти как с нескольких устройств (в том числе новых), так и с несколькими методами авторизации для всех этих устройств (вне зависимости от ОС и платформы).