В майском приложении есть действие «AlertActivity», которое время от времени запускается из службы (воспринимайте это как сигнал тревоги).Пользователь может выбрать взаимодействие с этим сигналом тревоги или отменить его, если он / она занят.Когда пользователь отменяет действие, я завершаю его () и хочу, чтобы пользователь вернулся к действию, которое он в данный момент использовал (не обязательно из моего собственного приложения).
Я впервые начал с:
Intent intent = new Intent(ctx, AlertActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
//Note that Intent.FLAG_ACTIVITY_NEW_TASK is needed in order to call startActivity without an activity context
startActivity(intent);
Используя этот подход, AlertActivity завершает работу с самым последним используемым действием из моего приложения вместо последнего открытого действия из любого приложения перед предупреждением.
Следующее, что я попробовал, было:
Intent intent = new Intent(ctx, AlertActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
, которое всегда заканчивается последним действием, которое НЕ принадлежит моему приложению, а это не то, что я хочу, если пользователь использовал действиеиз моего приложения до срабатывания оповещения.
Существует ли какая-либо комбинация флагов или любой другой прием, с помощью которого восстанавливается последнее использованное действие после завершения AlertActivity, независимо от того, принадлежит ли это действие моему приложению или нет