2015-07-08 4 views
0

Я хочу получить текущего зарегистрированного пользователя во многих местах моего приложения для Android. Каков наилучший способ?Лучший способ получить зарегистрированного пользователя в приложении

  1. Сохранить его в статической переменной в User классе и получить его как User.getCurrentUser()
  2. Получить его из DAO или хранилище, как usersRepository.getCurrentUser()

Или есть другой способ лучше?

Спасибо.

+3

Почти нет кода и способа слишком много возможных ответов -1 –

+0

Ну, я прошу, какой путь является лучшим. Я еще не реализовал эту функцию. –

+0

Для меня, если вам нужен текущий пользователь в слишком многих местах, там может быть недостаток дизайна. С другой стороны, если вам это нужно в некоторых классах/функциях, почему бы вам не передать его в качестве аргумента? –

ответ

2

В веб-приложения используют стандартный способ: request.getRemoteUser()

Если вам необходимо получить дополнительную информацию об этом пользователю просто хранить его в сессии:

session.setAttribute("user", userObject); 

Если вы используете другой вид приложения (например, мобильное приложение), и только один пользователь за время может быть зарегистрирован, вы можете использовать однотонный адрес, где хранятся данные пользователя:

User user = User.getInstance(); 

user.setName("blabla"); // To store information 

user.getName();   // To get information 
+0

Спасибо. Это мобильное приложение, поэтому я сделаю это с одним пользователем, как вы говорите. –

Смежные вопросы