Android 10.0 pms获取应用列表时过滤掉某些app功能实现

本文介绍了如何在Android 10.0系统中,通过自定义PMS(Package Manager Service)在第三方app获取应用列表时过滤特定应用。详细解析了PackageManagerService中的关键方法,包括queryIntentActivities(),并展示了如何在applyPostResolutionFilter()中判断并移除指定包名的应用,以达到过滤效果。
摘要由CSDN通过智能技术生成

1.前言


  在10.0的系统rom定制化开发中,对系统定制的功能也是很多的,在一次产品开发中,要求在第三方app获取应用列表的时候,需要过滤掉某些app,就是不显示在app应用列表中,这就需要在pms查询app列表时过滤掉这些app就可以了,接下来就实现这些功能

2.pms获取应用列表时过滤掉某些app功能实现的核心类

frameworks\base\core\java\android\content\pm\PackageManager.java
frameworks\base\services\core\java\com\android\server\pm\PackageManagerService.java

3.pms获取应用列表时过滤掉某些app功能实现的核心功能分析和实现
 

首选看app中是如何通过pms来获取app列表的相关源码,接下来分析下pms的相关源码
         final PackageManager packageManager = getPackageManager();
        final Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
        mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);
        List<ResolveInfo> apps

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安卓兼职framework应用工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值