1

使用我的 Android 应用程序,我正在尝试显式启动外部应用程序的组件。

ComponentName name =  new ComponentName("other.app.android", "other.app.android.Activity1");
Uri uri = Uri.parse("http://127.0.0.1:8111");
Intent abc = new Intent();
abc.setData(uri);
abc.setComponent(name);
startActivity(abc);

我应该添加这两行以使其正常运行吗?

(1)abc.addCategory("android.intent.category.DEFAULT");

(2)abc.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

4

1 回答 1

0

我应该添加这两行以使其正常运行吗?

“正确运行”是一个解释问题。你需要决定你想要什么!

(1) abc.addCategory("android.intent.category.DEFAULT");

这不是必需的。当您调用时,默认类别会自动添加到隐式搜索条件startActivity()中。

(2) abc.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

如果您希望目标Activity在新任务中启动(即:不在现有任务中),您可以添加此项。如果不添加此标志,则目标Activity将在当前任务中启动。这取决于您想要的行为。

于 2016-08-19T10:23:47.183 回答