Существует еще один способ, который работает даже на Android3.1 +. Вы не можете отключить сам значок, но вы можете отключить один компонент приложения. Таким образом, отключение активности запуска приложений приведет к тому, что ее значок будет удален из пусковой установки.
код, чтобы сделать это просто:
ComponentName componentToDisable =
new ComponentName("com.helloandroid.apptodisable",
"com.helloandroid.apptodisable.LauncherActivity");
getPackageManager().setComponentEnabledSetting(
componentToDisable,
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP);
Существует несколько вещей, которые необходимо знать об этом решении:
1-инвалидов компонент не будет спускаться на воду в любом случае
2-другие неинвалифицированные действия будут запускаться из других приложений.
3-приложение может отключать только свой компонент. Существует разрешение «android.permission.CHANGE_COMPONENT_ENABLED_STATE», но он не будет работать, у третьих сторон не может быть такого разрешения.
4-значок будет только исчезать при перезапуске пусковой установки, поэтому при следующей перезагрузке телефона, пусковая установка для перезапуска не рекомендуется.
Таким образом, приложение должно запускаться по крайней мере вовремя.
Ссылка:
Removing an app icon from launcher
Справедливо. Хороший ответ. – rootpanthera