隐藏Icon有3种方式,在Manifest中注册Activity时改为隐式启动Icon不会显示,但不会动态显示

                                                            

第一种:隐式

 
也可以去掉Launch 但程序没有入口不能正常启动

第二种:也可以用代码方式隐藏

PackageManager p1 = getPackageManager();p1.setComponentEnabledSetting(getComponentName(),PackageManager.COMPONENT_ENABLED_STATE_DISABLED,PackageManager.DONT_KILL_APP);

一样隐藏后程序就没法启动
第三种:在intent-file中设置data属性,这种貌似可以条件启动,但是一直没研究出来


最后解决方案:
设置两个主acitivy一个为程序外壳,一个为主要activity
Manifest配置:
                                                                                                                                        

主要activity,属性设为隐式即DEFAULT,外壳activity设为程序入口
外壳activity启动后跳到主要的acitivy
PackageManager p1 = getPackageManager();p1.setComponentEnabledSetting(getComponentName(),PackageManager.COMPONENT_ENABLED_STATE_DISABLED,PackageManager.DONT_KILL_APP); 


主acitivy中条件判断Icon是否隐藏了

显示Icon:
PackageManager p1 = getPackageManager();p1.setComponentEnabledSetting(getComponentName(),PackageManager.COMPONENT_ENABLED_STATE_ENABLED,PackageManager.DONT_KILL_APP);

 隐藏Icon:

PackageManager p1 = getPackageManager();p1.setComponentEnabledSetting(getComponentName(),PackageManager.COMPONENT_ENABLED_STATE_DISABLED,PackageManager.DONT_KILL_APP); 



更多相关文章

  1. Android——手写字体识别程序
  2. Dev Guide_Android(安卓)Basics_Application Fundamentals
  3. Google VR SDK for Android(1)-introduction(介绍)
  4. Android(java)学习笔记38:Android(安卓)短信发送
  5. 面试必备:Android(安卓)Activity启动流程源码分析
  6. [置顶] DownloadProvider 源码详细分析
  7. Android通知(Notification)使用详解
  8. android经典面试题集锦
  9. android启动之SystemServer启动

随机推荐

  1. 深入浅出讲解MySQL的并行复制
  2. MacBook下python3.7安装教程
  3. Windows7下Python3.4使用MySQL数据库
  4. mysql遇到load data导入文件数据出现1290
  5. Mysql指定日期区间的提取方法
  6. mysql 8.0.11 macos10.13安装配置方法图
  7. mysql 5.6.23 安装配置环境变量教程
  8. Ubuntu16.04安装mysql5.7.22的图文教程
  9. 浅析mysql.data.dll驱动各版本介绍
  10. Mysql数据库实现多字段过滤的方法