从系统层禁用app

本文介绍了一种从系统层禁用App但仍在launcher中显示图标的方法,并提供了实现的具体思路和技术细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先说禁用app系统自己有方法:packageManager.setApplicationEnabledSetting(packageName, newState, flags);这个方法是设置里面禁用app用的方法,禁用后,在launcher界面是不显示app图标的,我们的需求是从系统层禁用app,launcher也要显示app图标,点击后提示“此应用被禁用”。好了,思路是从activity启动流程里面判断,新启动的activity如果包名和我们想要禁用的app的包名一致,就不启动activity。下面是我看的activity启动流程的文章:http://blog.youkuaiyun.com/luoshengyang/article/details/6689748


上面图片是我修改的地方,判断包名如果是“com.android.settings”就return 并发广播,在此处直接dialog或者Toast的话会报错,因为此处是在子线程中执行的,所以l利用发广播的方式,外面可以注册静态广播来diaolg提示或者自己的操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值