Запрещение пользователям нажимать «назад» после того, как они вышли из приложения - PullRequest
1 голос
/ 17 сентября 2011

Как только пользователь выходит из (из предпочтений), обработчик выходит из него, и он переносит его на начальную стартовую страницу.

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

Я пытался отправить намерение начать действие с флагами 'FLAG_ACTIVITY_CLEAR_TOP' и 'SINGLE_TOP', но, похоже, оно не работает.

Спасибо

Ответы [ 2 ]

1 голос
/ 17 сентября 2011

Попробуйте опцию FLAG_ACTIVITY_CLEAR_TASK .

РЕДАКТИРОВАТЬ: только что заметили, что это только в API 11. Вам, вероятно, потребуется сделать что-то вроде регистрации BroadcastReceiver во всех ваших действиях, затемна экране выхода отправьте Намерение, которое перехватит BroadcastReceiver.После этого действие может полностью завершиться.

0 голосов
/ 17 сентября 2011

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

Один из них - очистить стек кнопок «Назад» при запуске своей деятельности следующим образом: myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);, хотя я не уверен, почему это не работает для вас.

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

@Override
public void onBackPressed() 
{
    return;
}
...