Задний план
Я вызвал простой код для создания ярлыка для действия. Код очень похож на этот:
Intent shortcutintent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_NAME, getString(R.string.shortcutname));
Parcelable icon = Intent.ShortcutIconResource.fromContext(getApplicationContext(), R.drawable.icon);
shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_ICON_RESOURCE, icon);
shortcutintent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, new Intent(getApplicationContext() , MainActivity.class));
sendBroadcast(shortcutintent);
Эта проблема
Дело в том, что когда я открываю приложение, затем нажимаю кнопку «Домой», а затем нажимаю значок приложения на панели запуска, я вижу, что onCreate снова вызывается (я добавил тост в onCreate).
Что я пробовал
Я пробовал различные флаги намерений, чтобы исправить это, но не смог найти ни одного.
Вопрос
Это происходило не только на сторонних ланчерах (в моем случае Nova Launcher), но и на официальной стоковой версии Android 6, на Nexus 5.
Как это могло произойти? Почему лаунчер повторно открывает приложение?