Android высвобождает историю задач, когда фоновые процессы ограничены 1
Сценарий:
Мое приложение делает следующее:
- Показывает кнопку
- Когда я нажимаю кнопку, в моей задаче отображается новое действие из другого приложения.
Я ожидаю, что если я нажму обратно в этом новом действии, я вернусь к своему заявлению. Это происходит при стандартной работе.
Однако, если я установлю "Предел фонового процесса" на "1 процесс", это перестанет работать; ответный удар просто возвращает к панели запуска задач. Android не пытается восстановить (уничтоженные) действия ранее в моем стеке задач. (их метод onCreate никогда не вызывается)
Я пытался поместить android:alwaysRetainTaskState="true" в корневое действие (и в каждое действие, с которым взаимодействует пользователь), но это, по-видимому, некорректное поведение сохраняется.
Это преднамеренное поведение в Android? Может ли пользователь в реальном мире когда-либо сталкиваться с таким поведением моего приложения?
1 ответ
Переход к другому приложению запустит другой процесс. Если предел фонового процесса равен "1", то ваше приложение будет уничтожено. Если вы не используете службы, которые не находятся на переднем плане. Прочитайте этот пост:
Так что, да, пользователь может испытать это. Однако этот пользователь, вероятно, знает, что он ограничил фоновый процесс чем-то необычным и, скорее всего, изменит его, чтобы "исправить" любое нежелательное поведение.