Использование `ActivityManager` для переключения программ
«`java
ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
// Получить список запущенных задач
List
// Если есть запущенные задачи, переключиться на верхнюю задачу
if (tasks != null && !tasks.isEmpty()) {
int taskId = tasks.get(0).id;
activityManager.moveTaskToFront(taskId, 0);
}
«`
Использование `Intent` для переключения программ
«`java
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
startActivity(intent);
«`
Использование `ComponentName` для переключения программ
«`java
ComponentName name = new ComponentName(«com.example.package», «com.example.package.MainActivity»);
Intent intent = new Intent();
intent.setComponent(name);
startActivity(intent);
«`
Обратите внимание:
При использовании `ActivityManager` необходимо убедиться, что у приложения есть разрешение `android.permission.RESTART_PACKAGES`.
При использовании `Intent` или `ComponentName` приложение должно иметь возможность запускать целевую программу.
Не рекомендуется переключать программы слишком часто, так как это может негативно повлиять на производительность устройства.