Намерение очень медленно, чтобы начать новую активность :( - PullRequest
8 голосов
/ 02 мая 2011

У меня есть этот кусок кода для намерения:

Intent i = new Intent();
        i.setAction(Intent.ACTION_MAIN);
        i.addCategory(Intent.CATEGORY_LAUNCHER);
        i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK
                | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
        i.setComponent(new ComponentName(packToLaunch, nameToLaunch));
        startActivity(i);

Это в основном запускает новое действие, основанное на имени пакета, который я передаю ему. Иногда для запуска этого нового действия требуется до 5 секунд. Есть ли способ ускорить этот процесс? Это даже занимает много времени, когда у меня есть приложение, которое все еще работает. Пожалуйста, помогите ...

1 Ответ

5 голосов
/ 18 ноября 2016

Похоже, что Android намеренно задерживает запуск активности из службы сразу после нажатия кнопки HOME .(При использовании кнопки НАЗАД все в порядке.) Была даже опубликована проблема https://code.google.com/p/android/issues/detail?id=4536, однако она устарела.

Я попытался найти фактическую реализацию задержки в источнике Android, но не смог.Возможно, вы захотите проверить следующий вопрос, поскольку он говорит об одной и той же проблеме и дает некоторые дополнительные сведения: Запуск действия из службы после нажатия кнопки HOME без задержки 5 секунд

...