如何从ResolveInfo启动Intent

Pet*_*rtz 25 android launcher android-intent

我正在尝试为Android制作自定义启动器,我正在试图弄清楚如何启动我的不同应用程序.我认为这样做的方式是意图,我在这里发现了一个帖子:

从你自己打开另一个应用程序(意图)

我真的不明白答案!有人可以给我一个简洁的片段或一系列步骤,从单个ResolveInfo到启动由ResolveInfo表示的应用程序吗?

Com*_*are 46

鉴于一个ResolveInfo命名launchable:

ActivityInfo activity=launchable.activityInfo;
ComponentName name=new ComponentName(activity.applicationInfo.packageName,
                                     activity.name);
Intent i=new Intent(Intent.ACTION_MAIN);

i.addCategory(Intent.CATEGORY_LAUNCHER);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK |
            Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
i.setComponent(name);

startActivity(i);
Run Code Online (Sandbox Code Playgroud)

(来自https://github.com/commonsguy/cw-omnibus/tree/master/Introspection/Launchalot)


Dan*_*eón 20

通过这种方式创建一个新的Intent.

    Intent intent = new Intent();
    intent.setClassName(resolveInfo.activityInfo.applicationInfo.packageName,
            resolveInfo.activityInfo.name);
    startActivity(intent);
Run Code Online (Sandbox Code Playgroud)


归档时间:

查看次数:

11619 次

最近记录:

12 年,6 月 前