Как выйти из текущего приложения и запустить активность другого приложения? - PullRequest
0 голосов
/ 25 апреля 2018

У меня есть простое приложение для Android, которое требует запуска другого приложения при определенных условиях, и мне нужно будет проверить условие при запуске приложения.То есть либо продолжайте запускать мое приложение, либо просто запустите другое приложение:

if (A == true) {
 launch another activity of another app
 leave the current app without creating the main activity
} else {
 launch the main activity of the current app
}

Может кто-нибудь сообщить мне, как поступить с == истинным случаем?Я могу запустить действие другого приложения, но у меня проблемы с выходом из текущего приложения, даже не открывая основное действие.

Любая помощь будет принята с благодарностью!

Ответы [ 2 ]

0 голосов
/ 25 апреля 2018

Если вы хотите запустить другое действие другого приложения без обычного IntentFilter , то самое простое решение:

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(new ComponentName("com.anotherapp.package","com.anotherapp.package.MainActivity"));
startActivity(intent);

Конечно, вам нужно знать package name и Activity имя, которое вы хотите начать

Что касается завершения вашего приложения, позвоните

finishAndRemoveTask();
0 голосов
/ 25 апреля 2018

Вы можете запустить другое приложение, используя следующие намерения

Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.example.abc");//pass the packagename of app you want to open
startActivity( LaunchIntent );

Если вы не знаете название пакета приложения, которое вы хотели запустить, попробуйте свои силы на

PackageManager pm;
pm = getPackageManager();
//  get a list of installed apps.
packages = pm.getInstalledApplications(0);

Передайте имя пакета приложения, которое вы хотите открыть. Вы можете использовать это, если A == true

иначе Вы можете запустить MainActivity как

startActivity(new Intent(CurrentActivity.this,MainActivity.class));
...