隐藏应用图标总共有三种方式:
1>AndroidManifest.xml文件中在入口Activity的intent-filter里去掉<category android:name=”android.intent.category.LAUNCHER” />,或者将LAUNCHER改为DEFAULT
2>在AndroidManifest.xml的入口Activity里面intent-filte中设置<data></data>元素,
例如:<data android:host="TestActivity" android:scheme="com.android.test">,也就是这个入口Activity可以想响应这个uri:com.android.test://TestActivity的特定intent
那么问题来了,为什么加入这个属性之或应用程序就不显示图标了呢?因为我们应用程序的入口Activity设置成了由隐士的Intent来启动,所以应用实现了隐藏图标
3> PackageManager p = getPackageManager();
隐藏图标:
p.setComponentEnabledSetting(getComponentName(), PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
对应的想要显示图标则加上:
p.setComponentEnabledSetting(getComponentName(), PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);