Android - вывести стороннее приложение на передний план в его существующем состоянии
Я занимаюсь разработкой служебного приложения, которое выполняет множество задач, одним из которых является запуск других приложений. Если это приложение уже запущено, я хотел бы вывести это приложение на передний план... так же, как это делает функция недавних экранов. Поэтому я использую:
Intent launchIntent = con.getPackageManager().getLaunchIntentForPackage(app.packageName);
if(launchIntent!=null){
launchIntent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
con.startActivity(launchIntent);
}
Это работает в некоторых случаях, но не во всех. С некоторыми приложениями приложение просто запускается снова, как будто оно никогда не было открыто.
Я пытался взглянуть на исходный код, чтобы найти, что именно делает система, чтобы достичь этого, но не повезло...
Любая помощь?