如何从具有不同流程的意图启动另一个应用程序?

时间:2018-10-09 12:55:16

标签: android android-intent android-launcher android-task

实际上,我正在尝试通过Uri意向从“应用A”启动“应用B”,但是当我最小化该应用时,它在后台仅显示一个应用即在该过程中正在加载“ App A”和“ App B”。

从“应用A”启动“应用B”的代码

    Uri uri = Uri.parse("MyappB://pt?user=userID&pass=Password"); 
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setData(uri);
    startActivity(intent);

应用内B清单文件

 <activity android:name=".common.controller.ParseDeepLinkActivity">
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data
                android:scheme="MyappB"
                android:host="pt"
                />
        </intent-filter>
    </activity>

它启动了第二个App B,但是当我最小化时,其过程是相同的,我不会在后台看到两个App,它仅在后台显示App A并在其中加载App B。

如何获得App A和App B的两个单独流程?

1 个答案:

答案 0 :(得分:0)

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setComponent(ComponentName.unflattenFromString("MyappB://ptuser=userID&pass=Password"));
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);