Что вам нужно, так это простая деятельность, которая ничего не делает.Вот пример:
public class NotificationActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Now finish, which will drop the user in to the activity that was at the top
// of the task stack
finish();
}
}
Настройте свое уведомление, чтобы начать эту деятельность.Убедитесь, что в манифесте сходство задач этого действия совпадает со сходством задач других действий в вашем приложении (по умолчанию это так, если вы явно не установили android: taskAffinity ).
Когда пользователь выбирает это уведомление, если ваше приложение работает, то NotificationActivity будет запускаться поверх самого верхнего действия в задаче вашего приложения, и эта задача будет выведена на передний план.,Когда NotificationActivity завершает работу, оно просто возвращает пользователя к самой верхней активности в вашем приложении (т. Е. Куда бы пользователь ни бросил его, когда перешел в фоновый режим).
Это не будет работать, если ваше приложение не 'т уже работает.Однако у вас есть 2 варианта для решения этой проблемы:
Убедитесь, что уведомление не присутствует в панели уведомлений, когда ваше приложение не запущено.
В методе onCreate () объекта NotificationActivity проверьте, запущено ли ваше приложение, и не запускается ли оно, вызовите startActivity () и запустите ваше приложение.Если вы сделаете это, обязательно установите флаг Intent.FLAG_ACTIVITY_NEW_TASK при запуске приложения, чтобы корневым действием задачи не было NotificationActivity.