Есть ли обходной путь для добавления недавно *использованных* приложений к моим недавно *запущенным* приложениям?

Если я долго нажимаю home, я получаю список последних шести приложений, которые я использовал, но если я открою веб-браузер из другого приложения (например, перейдя по ссылке в Tweetdeck или по электронной почте), веб-браузер никогда не появится в моем недавнем список приложений. Кажется, это ожидаемое поведение - мне интересно, есть ли обходной путь для этого.

Он появляется в ответах на другие вопросы:

Почему Google Talk никогда не отображается в списке «Последние приложения»?

Почему gmail не отображается в списке последних приложений, когда я долго нажимаю кнопку «Домой»?

Я думаю, вам лучше добавить тег для вашей ОС. Поведение последних приложений в ICS совершенно другое.
Готово (имбирный пряник)

Ответы (1)

Увы, скорее всего, ответ: нет.

Причина: модель приложения Android.

Приложение состоит из довольно слабо связанных компонентов (здесь — Activity), которые могут запускаться независимо друг от друга. Только когда основное действие запускается как отдельная задача, создается запись в списке недавно запущенных . Другие приложения также могут запускать внешнее действие (другого приложения), которое не учитывается в этом списке.

В основном это происходит, когда вы не запускаете приложение из панели запуска:

  • Вы нажимаете уведомление (пропущенный вызов, смс, событие календаря, ...)
  • Приложение открывает другое приложение (приложение Twitter -> браузер)
  • перейти по ссылке в смс -> браузер
  • выберите изображение в приложении -> открыть в галерее
  • открыть ютуб по ссылке в браузере
  • ...

Все эти «открытые» приложения считаются частью открывающегося приложения, а не отдельным экземпляром (скорее всего)

Я ответил на аналогичный вопрос здесь: Функция кнопки «Назад» после открытия URL-адреса из приложения (Twitter) .

Информация о базовой архитектуре: http://developer.android.com/guide/topics/fundamentals/tasks-and-back-stack.html .