【发布时间】:2010-11-01 15:46:06
【问题描述】:
有没有办法在运行时从主启动器中删除活动?我的意思是从其属性或类似的东西中删除Intent.CATEGORY_LAUNCHER。
【问题讨论】:
标签: java android android-manifest
有没有办法在运行时从主启动器中删除活动?我的意思是从其属性或类似的东西中删除Intent.CATEGORY_LAUNCHER。
【问题讨论】:
标签: java android android-manifest
您可以通过PackageManager#setComponentEnabledSetting() 禁用组件,这将具有将其从启动器中删除的效果。
【讨论】:
实际上从 android 10+ 开始,隐藏应用启动器图标是相当困难的。我已经使用了代码-
val packageManager = packageManager
**// disable the app launcher icon**
val componentName = ComponentName(
this,
MainActivity::class.java
)
packageManager.setComponentEnabledSetting(
componentName,
PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
PackageManager.DONT_KILL_APP
)
**// enable the app launcher icon**
val componentName = ComponentName(
this,
MainActivity::class.java
)
packageManager.setComponentEnabledSetting(
componentName,
PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
PackageManager.DONT_KILL_APP
)
当禁用代码运行时,它只会使应用启动器图标禁用而不是隐藏。但是不能启动,点击启动器图标会打开应用信息设置页面。
另一种方法 - 这是另一种方法,制作一个应用程序并将其作为设备所有者模式运行。然后我们就可以隐藏/删除应用启动器图标了。
访问链接-https://www.sisik.eu/blog/android/dev-admin/uninstalling-and-disabling-apps
【讨论】: