如何在没有root设备的情况下隐藏Android设备中的任何应用程序?

San*_*990 3 android

我正在开发一个Android应用程序.我想在我的Android设备中隐藏任何应用程序图标(whatsapp等等),我想通过按一些数字来启动我的应用程序,例如456#.有没有办法做到这一点?

我知道如何隐藏我的应用程序图标,但我想搜索如何隐藏其他应用程序图标.

Plz提前帮助我.

Chi*_*iya 6

你在单个查询中提出了很多问题.让我过滤一下.

我知道如何隐藏我的应用程序图标,但我想搜索如何隐藏其他应用程序图标.

基本上你只需要传递该应用程序的Package name和Launcher活动.

PackageManager p = getPackageManager();
ComponentName componentName = new ComponentName("YOUR_PACKAGE_NAME", "YOUR_PACKAGE_NAME.LAUNCHER_ACTIVITY_NAME");
p.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
Run Code Online (Sandbox Code Playgroud)

如何找到已安装App的Launcher活动?

在下面的代码中,您将获得所有已安装应用的启动器活动.

final PackageManager pm = getPackageManager();

Intent mainIntent = new Intent(Intent.ACTION_MAIN, null);
mainIntent.addCategory(Intent.CATEGORY_LAUNCHER);

List < ResolveInfo > appList = pm.queryIntentActivities(mainIntent, 0);
Collections.sort(appList, new ResolveInfo.DisplayNameComparator(pm));

for (ResolveInfo temp: appList) {
    Log.v("my logs", "package and activity name = " + temp.activityInfo.packageName + "    " + temp.activityInfo.name);
}
Run Code Online (Sandbox Code Playgroud)

我想通过按一些数字来启动我的应用程序,例如456#

检查参考链接

所以,现在你几乎已经完成了,你想尝试一次让我知道.