Каков наилучший подход к хранению данных авторизованного пользователя в MVVM? - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть приложение электронной коммерции для Android, в котором пользователь должен войти в систему для выполнения некоторых функций (добавление товара в корзину, маркировка товара в качестве избранного и т. Д.), И есть некоторые функции, которые будут работать без входа в систему. (Поиск товаров)

Поэтому, когда пользователь пытается выполнить функцию, требующую подписи, мне нужно переключиться на действие, чтобы войти в систему.Для входа в систему используется аутентификация Firebase (провайдер Google).

Каков наилучший подход (в MVVP ) для хранения сведений о пользователе (таких как идентификатор пользователя Firebase, имя и т. Д.), Которые должны быть доступны вприложение в глобальном масштабе (во всех необходимых действиях).

Возможное решение (я придумал):
1. Один ViewModel для хранения зарегистрированных данных пользователя, который доступен во всех необходимых activities,(Используя это на данный момент)
2. Использование общих настроек для хранения пользовательских данных.
3. Использование глобальной переменной данных с использованием расширяющего класс Application.

Если какой-либо альтернативный подход лучше указанных, пожалуйста, укажите!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...