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

1.前言

 在9.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功能实现的核心功能分析和实现

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 apps = packageManager.queryIntentActivities(mainIntent, 0);
        for(ResolveInfo info : apps){
            String pkgname = info.activityInfo.packageNa

你可能感兴趣的:(android,9.0,Rom定制化系统开发讲解系列,android,java,framework,pms过滤app,pms)