当前位置: 首页 > article >正文

Android11系统桌面隐藏指定APP图标

做项目时有时会遇到这样的需求,客户要求隐藏Launcher3桌面的某个app图标,但是又不能删除去掉这个app,具体修改如下:

diff --git a/src/com/android/launcher3/model/LoaderTask.java b/src/com/android/launcher3/model/LoaderTask.java
old mode 100644
new mode 100755
index 4756edc..eb737de
--- a/src/com/android/launcher3/model/LoaderTask.java
+++ b/src/com/android/launcher3/model/LoaderTask.java
@@ -817,6 +817,9 @@ public class LoaderTask implements Runnable {
             for (int i = 0; i < apps.size(); i++) {
                 LauncherActivityInfo app = apps.get(i);
                 // This builds the icon bitmaps.
+                 if (app.getComponentName().getPackageName().equals("org.chromium.webview_shell")) {
+                       continue;
+                 }
                 mBgAllAppsList.add(new AppInfo(app, user, quietMode), app);
             }
 
diff --git a/src/com/android/launcher3/model/PackageUpdatedTask.java b/src/com/android/launcher3/model/PackageUpdatedTask.java
old mode 100644
new mode 100755
index 78ecbc6..d928383
--- a/src/com/android/launcher3/model/PackageUpdatedTask.java
+++ b/src/com/android/launcher3/model/PackageUpdatedTask.java
@@ -94,6 +94,9 @@ public class PackageUpdatedTask extends BaseModelUpdateTask {
             case OP_ADD: {
                 for (int i = 0; i < N; i++) {
                     if (DEBUG) Log.d(TAG, "mAllAppsList.addPackage " + packages[i]);
+					if ("org.chromium.webview_shell".equals(packages[i])) {
+                          continue;
+					}
                     iconCache.updateIconsForPkg(packages[i], mUser);
                     if (FeatureFlags.LAUNCHER3_PROMISE_APPS_IN_ALL_APPS) {
                         appsList.removePackage(packages[i], Process.myUserHandle());
@@ -111,6 +114,9 @@ public class PackageUpdatedTask extends BaseModelUpdateTask {
             case OP_UPDATE:
                 for (int i = 0; i < N; i++) {
                     if (DEBUG) Log.d(TAG, "mAllAppsList.updatePackage " + packages[i]);
+					if ("org.chromium.webview_shell".equals(packages[i])) {
+                          continue;
+					}
                     iconCache.updateIconsForPkg(packages[i], mUser);
                     appsList.updatePackage(context, packages[i], mUser);
                     app.getWidgetCache().removePackage(packages[i], mUser);


http://www.kler.cn/a/107108.html

相关文章:

  • 字符及字符串(ASCII编码系统)
  • 设计模式:工厂方法模式和策略模式
  • 拦截器实现http请求访问本地图片
  • git commit 校验
  • RHCE的学习(16)(shell脚本编程)
  • 红日靶机(七)笔记
  • ab压力测试
  • 基于springboot实现校园疫情防控系统项目【项目源码+论文说明】
  • 【Python机器学习】零基础掌握BaggingClassifier集成学习
  • 爬虫、数据清洗和分析
  • User CSS 在性能优化方面的实践
  • JVM详解(InsCode AI 创作助手)
  • 第14期 | GPTSecurity周报
  • docker容器怎么设置开机启动
  • 线程状态,BLOCKED和WAITING 有什么区别
  • Ubuntu部署docker及docker常用操作
  • 计算机网络重点概念整理-第五章 传输层【期末复习|考研复习】
  • Spring Boot 依赖注入实现原理
  • NLP之RNN的原理讲解(python示例)
  • 【C++】:拷贝构造函数与赋值运算符重载的实例应用之日期类的实现
  • Ubuntu22.0.4安装svn服务
  • HarmonyOS原生分析能力,即开即用助力精细化运营
  • Vue将Element Plus 进行自定义封装
  • 【Linux】安装VMWare虚拟机(安装配置)和配置Windows Server 2012 R2(安装配置连接vm虚拟机)以及环境配置
  • cesium开发引入方式
  • 一体化运维监控:数据中心运维可视化的指挥中枢