Android隐藏应用桌面图标/动态修改桌面图标

Android隐藏应用桌面图标/动态修改桌面图标

应用启动后点击隐藏

注意:在Android11只要在mainifest有权限申请,就不会隐藏

 private void hide() {
        PackageManager packageManager = getPackageManager();
        packageManager.setComponentEnabledSetting(getComponentName(),
                PackageManager.COMPONENT_ENABLED_STATE_DISABLED,
                PackageManager.DONT_KILL_APP);
    }

此方式可隐藏桌面图标,即Luncher里看不到应用icon和label,并且后台也看不到,只能手动停止 或卸载,手机管家可清理,启动后进程正常运行,后台日志正常输出

安装后直接隐藏

manifest中配置


启动页的下配置


完整配置如下示例:



    
    
        
            
                

                

            
        
    


此种配置,应用安装后能看到页面,后台也可见,桌面无图标,但是杀死进程后无法再次手动启动app

动态修改应用图标 icon 和 lable

1、清单文件增加权限



2、下增加一个


            
                

                
            
        

完整代码:







    
    
        
            
                


                
            
        

        
            
                

                
            
        
    


	//3调用
    private void chaneIcon() {

        PackageManager packageManager = getPackageManager();
        //显示别名的设置
        packageManager.setComponentEnabledSetting(new ComponentName(this, "com.example.luncherdemo.changeAfter"),
                PackageManager.COMPONENT_ENABLED_STATE_ENABLED ,
                PackageManager.DONT_KILL_APP);
        //disable 掉原来的设置
        packageManager.setComponentEnabledSetting(new ComponentName(this, "com.example.luncherdemo.MainActivity"),
                PackageManager.COMPONENT_ENABLED_STATE_DISABLED ,
                PackageManager.DONT_KILL_APP);
    }

这样就能动态修改 lable和icon了

你可能感兴趣的:(基础,android,java,apache)