26

Android 用のカスタム ランチャーを作成しようとしています。別のアプリケーション フォームを起動する方法を見つけようとしています。私はそれを行う方法が意図であると考えました、そして私はそれに関する投稿をここに見つけました:

自分の (インテント) から別のアプリケーションを開く

答えはよくわかりませんが!誰かが、単一の ResolveInfo からその ResolveInfo によって表されるアプリを起動するまでの一連の手順を簡潔なスニペットまたは一連の手順で教えてもらえますか?

4

2 に答える 2

49

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);

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

于 2012-09-20T11:09:41.430 に答える
22

この方法で新しい Intent を作成します。

    Intent intent = new Intent();
    intent.setClassName(resolveInfo.activityInfo.applicationInfo.packageName,
            resolveInfo.activityInfo.name);
    startActivity(intent);
于 2013-06-02T23:08:00.327 に答える