我隐藏了一些应用程序,现在想显示出来?在哪里调出来?
展开全部
1,AndroidManifest.xml文件中在入口Activity的intent-filter里去掉<category android:name=”android.intent.category.LAUNCHER” />,或者将LAUNCHER改为DEFAULT
2,在程序中加入下面的代码
显示图片:
PackageManager p = getPackageManager();
p.setComponentEnabledSetting(getComponentName(), PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);
隐藏图标:
PackageManager p = getPackageManager();
p.setComponentEnabledSetting(getComponentName(), PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
PackageManager.COMPONENT_ENABLED_STATE_ENABLED //显示应用图标
PackageManager.COMPONENT_ENABLED_STATE_DISABLED //隐藏应用图标
我用这俩个值来显示和隐藏应用图标有问题,隐藏以后就无法在显示应用图标了,在设置里的所有应用里也找不到了;
PackageManager.COMPONENT_ENABLED_STATE_DEFAULT //显示应用图标
PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER // 隐藏应用图标
将参数值该成这两个值就没有问题了,建议使用这两个值,
3,去掉android:icon=”@drawable/ic_launcher”中的资源啊,等等等等。。。
但是试过了每一种方法之后你都发现起到了作用但是却产生了其他的问题
这里先一个一个的解释下,
如果去掉<category android:name=”android.intent.category.LAUNCHER” />,就表示app没有启动入口了,这样子确实是解决了不显示图标的效果,但是那样的话我们的应用也运行不了了。头疼~~~
第二种 ,我们来看看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中这样设置了,那么应用图标不会显示,应用也不会运行。
那么,这也是不可行的~~~
第三种就不说了,我觉得是狗急跳墙的做法。
———————————分割线—————————————
接下来我要说的这种方法可以隐藏图标,同是也可以正常启动运行。
在manifest的入口activity里面intent-filter中设置<data></data>元素。
比如:
<data android:host=”AuthActivity” android:scheme=”com.android.example” />
注意,android:scheme是大小写敏感的,必须以小写字母开头
也就是这个MainActivity可以响应Uri为com.android.example://AuthActivity的特定 Intent
但是为什么加入这个之后app就不显示图标了呢?
因为我们把app的入口Activity申明为由接收隐士的Intent来启动,这样自然也就不会显示图标了。
好了,如果需要显示图标的话而且也必须响应上述Uri的话,那么我们可以在该Activity中再加入一个intent-filter标签,将d
2,在程序中加入下面的代码
显示图片:
PackageManager p = getPackageManager();
p.setComponentEnabledSetting(getComponentName(), PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);
隐藏图标:
PackageManager p = getPackageManager();
p.setComponentEnabledSetting(getComponentName(), PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
PackageManager.COMPONENT_ENABLED_STATE_ENABLED //显示应用图标
PackageManager.COMPONENT_ENABLED_STATE_DISABLED //隐藏应用图标
我用这俩个值来显示和隐藏应用图标有问题,隐藏以后就无法在显示应用图标了,在设置里的所有应用里也找不到了;
PackageManager.COMPONENT_ENABLED_STATE_DEFAULT //显示应用图标
PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER // 隐藏应用图标
将参数值该成这两个值就没有问题了,建议使用这两个值,
3,去掉android:icon=”@drawable/ic_launcher”中的资源啊,等等等等。。。
但是试过了每一种方法之后你都发现起到了作用但是却产生了其他的问题
这里先一个一个的解释下,
如果去掉<category android:name=”android.intent.category.LAUNCHER” />,就表示app没有启动入口了,这样子确实是解决了不显示图标的效果,但是那样的话我们的应用也运行不了了。头疼~~~
第二种 ,我们来看看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中这样设置了,那么应用图标不会显示,应用也不会运行。
那么,这也是不可行的~~~
第三种就不说了,我觉得是狗急跳墙的做法。
———————————分割线—————————————
接下来我要说的这种方法可以隐藏图标,同是也可以正常启动运行。
在manifest的入口activity里面intent-filter中设置<data></data>元素。
比如:
<data android:host=”AuthActivity” android:scheme=”com.android.example” />
注意,android:scheme是大小写敏感的,必须以小写字母开头
也就是这个MainActivity可以响应Uri为com.android.example://AuthActivity的特定 Intent
但是为什么加入这个之后app就不显示图标了呢?
因为我们把app的入口Activity申明为由接收隐士的Intent来启动,这样自然也就不会显示图标了。
好了,如果需要显示图标的话而且也必须响应上述Uri的话,那么我们可以在该Activity中再加入一个intent-filter标签,将d
追答
packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP); } else{ //显示应用图标
深圳市容大彩晶科技有限公司
2024-11-15 广告
2024-11-15 广告
广告机代理优选容大彩晶,深圳市容大彩晶科技有限公司自2007年成立伊始,一直专注于液晶商用显示产品的技术研发及产品服务。公司依托具有自主研发能力、创新高效的技术团队,打造出行业优质商用液晶显示设备。容大彩晶产品涵盖商用液晶显示、多媒体广告机...
点击进入详情页
本回答由深圳市容大彩晶科技有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询