如何在Launcher的主菜单中隐藏某个应用?

一、如果有APK的源码,只需修改AndroidManifest.xml文件

<activity
android:name=".Calculator"
android:label="@string/app_name"
android:windowSoftInputMode="stateAlwaysHidden">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.APP_CALCULATOR" />
</intent-filter>
</activity>

二、如果不能修改apk的源码,修改Launcher的代码

  1. 请修改LauncherModel.java的loadAllApps()方法,如下:
    ......
    // Create the ApplicationInfos
    for (int i = 0; i < apps.size(); i++) {
    LauncherActivityInfoCompat app = apps.get(i);
    // This builds the icon bitmaps.
    mBgAllAppsList.add(new AppInfo(mContext, app, user, mIconCache, quietMode));
    }
    //add begin
    mBgAllAppsList.removePackage("PackageName",user,true);
    mBgAllAppsList.added.removeAll(mBgAllAppsList.removed);
    mBgAllAppsList.removed.clear();
    //PackageName为要隐藏的包名
    //add end
    }
    ......
  2. 请在LauncherModel.java的PackageUpdatedTask的run()方法开头,将mPackages变量中要求不显示的package name移除掉。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容