Android客制化------过滤设置应用列表中某个应用

本文介绍了一个应用于Android系统的设置模块中管理应用程序部分的代码修改。主要功能是对应用程序列表进行筛选,排除特定包名或标签的应用,确保用户看到的是经过过滤后的应用程序列表。

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

diff --git a/packages/apps/Settings/src/com/android/settings/applications/ManageApplications.java b/packages/apps/Settings/src/com/android/set
index 7c35b1a..dec6876 100644
--- a/packages/apps/Settings/src/com/android/settings/applications/ManageApplications.java
+++ b/packages/apps/Settings/src/com/android/settings/applications/ManageApplications.java
@@ -1037,7 +1037,20 @@ public class ManageApplications extends InstrumentedFragment
         ArrayList<ApplicationsState.AppEntry> applyPrefixFilter(CharSequence prefix,
                                                                 ArrayList<ApplicationsState.AppEntry> origEntries) {
             if (prefix == null || prefix.length() == 0) {
-                return origEntries;
+                ArrayList<ApplicationsState.AppEntry> newEntries
+                        = new ArrayList<ApplicationsState.AppEntry>();
+                for (int i=0; i<origEntries.size(); i++) {
+                    ApplicationsState.AppEntry entry = origEntries.get(i);
+                    String nlabel = entry.getNormalizedLabel();
+                                       if((entry.info.packageName.equals("com.xxx.xxx"))){
+                                               continue;
+                                       }else if((entry.label.equals("xxxxx"))){
+                                               continue;
+                                       }else{
+                                               newEntries.add(entry);
+                                       }
+                }
+                return newEntries;
             } else {
                 String prefixStr = ApplicationsState.normalize(prefix.toString());
                 final String spacePrefixStr = " " + prefixStr;
@@ -1047,7 +1060,13 @@ public class ManageApplications extends InstrumentedFragment
                     ApplicationsState.AppEntry entry = origEntries.get(i);
                     String nlabel = entry.getNormalizedLabel();
                     if (nlabel.startsWith(prefixStr) || nlabel.indexOf(spacePrefixStr) != -1) {
-                        newEntries.add(entry);
+                                               if((entry.info.packageName.equals("com.xxx.xxx"))){
+                                                       continue;
+                                               }else if((entry.label.equals("xxxxx"))){
+                                                       continue;
+                                               }else{
+                                                       newEntries.add(entry);
+                                               }
                     }
                 }
                 return newEntries;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值