如何在 android 中以编程方式完成我的自定义启动器

How to finish my custom launcher Programmatically in android

我正在开发一个应用程序,我的要求是完成我的自定义启动器并切换到默认启动器。我怎样才能做到这一点?

按照以下步骤操作:

  1. 通过使用包管理器获取具有启动器和类别主页的意图。通过使用 queryIntents 方法。

  2. 使用第 0 个索引意图并获取 class 名称和包名称。将一些存储在其他地方,例如 sharedPreferences.

  3. 每当你想启动默认启动器时,只需使用 class 名称和打包程序名称创建意图。

  4. 然后在需要时启动 activity。

以下代码可能对您有所帮助:

        PackageManager packageManager = getPackageManager();
        Intent i = new Intent();
        i.addCategory(Intent.CATEGORY_HOME);
        i.setAction(Intent.ACTION_MAIN);
        List<ResolveInfo> queryIntentActivities = packageManager
                .queryIntentActivities(i, 0);

        ResolveInfo resolveInfo = queryIntentActivities.get(0);
        String packageName = resolveInfo.resolvePackageName;
        String className = resolveInfo.activityInfo.targetActivity;