我如何获得主要的活动名称,该名称是获取任何应用程序的组件名称以将其从启动器中隐藏的必要条件

问题描述 投票:-2回答:1
ActivityInfo[] list
    = getPackageManager().getPackageInfo(getPackageName()).activities;

这给了我所有Activitie的列表,但是如何找出哪个活动是主要的Activity


[我想我做错了,我是android新手,请纠正我

       PackageManager p = getPackageManager();
       Intent intent = p.getLaunchIntentForPackage("com.example.launcherhiddenapp");
       ComponentName componentName = new ComponentName(this, String.valueOf(intent));
       p.setComponentEnabledSetting(componentName, 
       PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);

这不起作用,我的应用在启动器中可见,我可以照常启动它

这是我使用意图后的代码

       PackageManager p = getPackageManager();
       Intent intent = p.getLaunchIntentForPackage(getPackageName());
       ComponentName componentName = new 
       ComponentName(this,String.valueOf(intent));
       p.setComponentEnabledSetting(componentName, 
       PackageManager.COMPONENT_ENABLED_STATE_DISABLED, 
       PackageManager.DONT_KILL_APP);

它仍然无法正常工作,应用程序在启动器中可见,请帮助我任何人

android android-manifest
1个回答
0
投票

尝试一下:

PacketManager manager = getPackageManager();
Intent intent = manager.getLaunchIntentForPackage(getPackageName());

这应该为您提供主要活动的完整软件包名称

© www.soinside.com 2019 - 2024. All rights reserved.