隐藏应用程序启动器图标

hide application launcher icon

我有 3 个应用程序 A、B、C 我想从启动器中隐藏 A 和 B 的图标。我想 运行 A & B inside C .

我找到了隐藏应用程序的代码:

PackageManager p = getPackageManager();
ComponentName componentName = new ComponentName(this, com.apps.MainActivity.class);
p.setComponentEnabledSetting(componentName,PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);

我在其他应用中为 运行 应用找到了这条鳕鱼:

  try {
                    PackageManager packageManager = getPackageManager();
                    Intent intent = packageManager.getLaunchIntentForPackage("ir.alexandre9009.nothing");
                    if (null != intent) {
                        startActivity(intent);
                    }
                } catch (ActivityNotFoundException e) {
                    // default message
                } catch (Exception e) {
                    // default message
                }

两个代码都可以正常工作

但是当我同时使用它们时,它们不起作用。也就是当我把A、B软件图标隐藏起来后,就不能再从C软件里面实现了

我想从软件 C 中隐藏软件 A 和 B 以及 运行 它们以启动它们的 activity。

隐藏应用的图标:

PackageManager p = getPackageManager();
ComponentName componentName = new ComponentName(this, your hiding app launcher class *com.A.MainActivity.class*); 
p.setComponentEnabledSetting(componentName, 
                            PackageManager.COMPONENT_ENABLED_STATE_DISABLE, 
                              PackageManager.DONT_KILL_APP);

恢复应用图标:

PackageManager p = getPackageManager();
ComponentName componentName = new ComponentName(this, your bring back app launcher class *com.A.MainActivity.class*);
p.setComponentEnabledSetting(componentName, 
PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);