2013-09-21 4 views
1

Я пытаюсь понять android:lauchMode, чтобы правильно применить его к приложению, над которым я работаю. В основном у меня есть 2 мероприятия. LoginActivity и HomeActivity.Деятельность LauchMode в режиме входа в систему

Состояние сеанса сохраняется, поэтому, если приложение было убито и вы вошли в систему, в следующий раз, когда вы откроете его, вы все равно войдете в систему. Поэтому, учитывая это, поведение, которое я ищу, следуйте за:

Вы всегда запускаете на LoginActivity, он проверяет, если вы вошли в систему, и если true, то он направляет вас на HomeActivity. В то время как в HomeActivity, если вы выйдете из системы, он перенаправит вас на LoginActivity.

Что мне нужно, так это в любом случае, если вы находитесь в режиме входа в систему или дома, задний стек будет чистым, и если вы нажмете кнопку «Назад» или что-то еще, вы не будете перенаправлены из «Домой» или «Вход в систему» , но вместо этого приложение может закрыться.

EDIT: Я не могу использовать noHistory="true" в Manifest, так как метод Auth должен вернуться к LoginActivity. Только HomeActivity не должно быть возвращено к LoginActivity. Итак, это правильное решение?

Intent login = getIntent() 
login.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY); 

Intent home = new Intent(this,Home.class); 
startActivity(home); 

ответ

1

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

См:

Removing an activity from the history stack

+0

Ну есть проблема, я не могу использовать noHistory на Вход причины: Идея о том, что пользователь не может прийти Вход из дома, но метод аутентификации (FB auth) необходимо вернуться к Login –