Android13隐藏某个App需要关注的源码文件

Android系统启动后,需要隐藏某些App。可以修改以下几个文件,实现效果。

QSSI.13/packages/apps/Launcher3/quickstep/src/com/android/launcher3/model/PredictionUpdateTask.java

QSSI.13/packages/apps/Launcher3/src/com/android/launcher3/AppFilter.java

复制代码
public class AppFilter {

    //the apps for disable to show
    public static String[] filters =new String[]{"my.tests.snapdragonsdktest","11222111","com.qlog","com.qualcomm.qti.connmgr"};

    private final Set<ComponentName> mFilteredComponents;
    private final Set<String> noShow = new HashSet<String>();

    public AppFilter(Context context) {
        for(String v : filters) {
            noShow.add(v);
        }
        mFilteredComponents = Arrays.stream(
                context.getResources().getStringArray(R.array.filtered_components))
                .map(ComponentName::unflattenFromString)
                .collect(Collectors.toSet());
    }

    public boolean shouldShowApp(ComponentName app) {
        String clzName = app.getClassName();
        String pkgName = app.getPackageName();
//        Log.e("AppFilter","clzName :===========: "+clzName);
//        Log.e("AppFilter","pkgName :===========: "+pkgName);
        if(pkgName.contains(pkgName)){
            return false;
        }
        return !mFilteredComponents.contains(app);
    }
}

QSSI.13/packages/apps/Settings/src/com/android/settings/applications/manageapplications/ManageApplications.java

不知道该隐藏的App的参数是什么?

可以在BubbleTextView里打Log。

Launcher3里的

复制代码
com.android.launcher3.BubbleTextView
复制代码
    @UiThread
    public void applyFromApplicationInfo(AppInfo info) {
        applyIconAndLabel(info);

        // We don't need to check the info since it's not a WorkspaceItemInfo
        setItemInfo(info);
        //
        Log.e(TAG," title ================ "+info.title);
        Log.e(TAG," title ================ "+info.componentName.getPackageName());
        Log.e(TAG," title ================ "+info.componentName.getClassName());
        // Verify high res immediately
        verifyHighRes();

        if ((info.runtimeStatusFlags & ItemInfoWithIcon.FLAG_SHOW_DOWNLOAD_PROGRESS_MASK) != 0) {
            applyProgressLevel();
        }
        applyDotState(info, false /* animate */);
        setDownloadStateContentDescription(info, info.getProgressLevel());
    }

引用:

https://blog.csdn.net/GG15625686299/article/details/132779824

相关推荐
CYY9512 小时前
Compose 入门篇
android·kotlin
杉氧16 小时前
Compose 时代的 MVI 架构:如何用单向数据流驱动复杂 UI?
android·架构·android jetpack
杉氧16 小时前
Modifier 的艺术:为什么链式调用的顺序决定了UI 的生命周期?
android·架构·android jetpack
李斯维17 小时前
腾讯 XLog 日志框架 Android 端接入
android·android studio·android jetpack
黄林晴17 小时前
Kotlin Toolchain 0.11 发布:Amper 正式更名,统一 kotlin 命令
android·kotlin
雨白18 小时前
C语言基础快速入门与指针初探
android
SamDeepThinking19 小时前
裁掉那个差程序员后,给你看团队里高手的代码:这个习惯,希望你有
java·后端·程序员
Exploring20 小时前
避坑指南:升级 AGP 8.0+ 导致第三方 SDK 编译崩溃的完美解决方案
android
朕瞧着你甚好20 小时前
技术雷达 & Java 集成评估报告 — Apache Tika 3.3.1
java·ai编程
MacroZheng21 小时前
短短几天,暴涨2.8万Star!又一款编程神器开源!
java·人工智能·后端