Я создаю приложение для Android с двумя действиями, использующими панель действий (https://github.com/johannilsson/android-actionbar, так как я нацеливаюсь на Android 2.2).
У него есть ряд действий.Существует «Домашняя» активность, которая называется Feed, и другая активность, которая называется «Настройки».
Проблема, с которой я столкнулся, заключается в том, что при использовании функции createIntent, приведенной в примере для панели действий, которую я использую, действие все равно будет уничтожено, а не возобновлено, когда пользователь нажимает кнопку «Домой», чтобы вернуться кЛента активности.
После небольшой отладки я обнаружил, что она разрушается не тогда, когда действие сначала приостанавливается и останавливается, а когда происходит запрос на его возобновление.
public static Intent createIntent(Context context)
{
Intent i = new Intent(context, Feed.class);
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
return i;
}
Это очень раздражает и значительно замедляет работу приложения, поскольку ему приходится перезагружать свои данные для канала (который кэшируется, но перезагружать данные не сразу).
Так как же мне избежатьэто поведение?и почему это происходит, так как я считаю, что дополнительный флаг должен остановить это поведение.