PackageManager.COMPONENT_ENABLED_STATE_ENABLED //显示应用图标

PackageManager.COMPONENT_ENABLED_STATE_DISABLED //隐藏应用图标

我用这俩个值来显示和隐藏应用图标有问题,隐藏以后就无法在显示应用图标了,在设置里的所有应用里也找不到了;

将参数值该成这两个值就没有问题了,建议使用这两个值。

3、去掉android:icon=”@drawable/ic_launcher”中的资源啊,等等等等。。。

但是试过了每一种方法之后你都发现起到了作用但是却产生了其他的问题:

1、如果去掉,就表示app没有启动入口了,

这样子确实是解决了不显示图标的效果,但是那样的话我们的应用也运行不了了。

2、我们来看看android developer上的说明:

public static final int COMPONENT_ENABLED_STATE_DISABLED

Flag for setApplicationEnabledSetting(String, int, int) and setComponentEnabledSetting(ComponentName, int, int): This component or application has been explicitly disabled, regardless of what it has specified in its manifest.

意思是,即使你在manifest中声明了这个component或application,当你设置为COMPONENT_ENABLED_STATE_DISABLED时,他们都是不可用的。也就是说,如果你在MainActivity中这样设置了,那么应用图标不会显示,应用也不会运行。

3、就不说了,我觉得是狗急跳墙的做法。

最优的解决方案:

接下来我要说的这种方法可以隐藏图标,同是也可以正常启动运行。

在manifest的入口activity里面intent-filter中设置元素。

比如:

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐