В настоящее время я работаю с приложением, которое должно иметь следующее поведение: в одном из действий пользователь может выбирать различные элементы в списке.При этом он должен иметь возможность сделать снимок, сохранить его и вернуться к предыдущему занятию.
У меня возникает следующая проблема: когда пользователь возвращается к занятию после снятия снимка,прогресс (в основном, выбранные предметы) теряется.
Я пытался использовать android: launchMode = "singleInstance" (а также singleTask) и android: alwaysRetainTaskState = "true" в своей деятельности, чтобы сохранить ее текущее состояние (и оно прекрасно работает, когда пользователь покидает приложениесделать что-то еще, а потом вернуться к этому).Я попытался использовать намерение ACTION_IMAGE_CAPTURE с FLAG_ACTIVITY_NEW_TASK, чтобы имитировать то же поведение (где-то в моем воображении я думал, что это должно быть то же самое, что запускать работу с картинками с домашнего экрана), но безрезультатно.Я даже пытался запустить работу с картинками с помощью startActivityforResult, надеясь, что каким-то образом моя активность не будет потеряна, но безрезультатно.
Я знаю, что мог бы использовать Bundle saveInstanceState, чтобы вручную сохранить и восстановить состояниепереопределив onPause, onResume, Create (и т. д.), но на самом деле в пользовательских компонентах много данных, которые нелегко сериализуемы, поэтому я бы хотел этого избежать.
Ну, наверное, мой вопрос в том, как мне воспроизвести то же поведение, что и в атрибуте AlwaysRetainTaskState manifest?Или в любом случае легко сохранить состояние моей активности?Или что я делаю не так, упуская очевидное?
Спасибо большое!