Android应用之【隐藏桌面图标的一种方法】
在Android10之前,应用程序通过调用PackageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP)函数来实现图标隐藏。
但是在android10之后,所有带四大组件(activity service broadcast contentprovider)和需要声明申请权限的应用,调用这个函数将失去效果,经过测试效果如下:
- 若activity的icon和roundIcon这两者都不是黑色,则调用后显示实际的像素值。
- 如果activity的icon和roundIcon同时设置为黑色,调用后,icon不显示,roundIcon显示系统默认的空白背景图标。
网上一种方式是,设置activity的label为空字符串“”,icon和roundIcon像素值为0的黑色图标。该方案链接如下:
Android10.0应用图标隐藏方案(7.0-10.0)
上面链接中,icon和roundIcon的图标文件如下:
上文中,theme字段透明的设置:
通过实际测试,这种方法的隐藏效果是有重大缺陷的,在调用开始的隐藏函数后,桌面上的图标虽然抹去了,但留下了一个图标大小的阴影,并不是文中所说的完全看不到(作者源码我在android12上亲自测试过),这时候点击虽然没有效果,但是视觉上的缺陷是不能容忍的。
通过实际测试,我发现有一种隐藏图标的方式,其实现步骤如下:
- 设置主activity的intent-filter字段,其格式必须满足如下两点,一是在启动节点的activity中,除却"android.intent.action.MAIN"和"android.intent.category.LAUNCHER"外,还要添加别的条目,比如android.intent.action.VIEW,目的就是打乱应用程序启动节点的默认设置,使之含有别的行为和动作,不能正常显示图标。
- 使用Android scheme方式从浏览器启动(或者另外再安装一个程序,当作此程序的启动器)。要注意的是,浏览器scheme启动方式不是说的从客户端,我原先以为,在客户端的浏览器中输入形如myscheme://myhost这样的url会触发程序的启动,但是反复测试是在没有效果,于是便想到,会不会这种scheme方式,说的是访问服务器的页面,页面中有个形如 “<a href=“myscheme://myhost”>点击此处启动Android程序</a>” 的标签,客户端浏览器中点击后,即可启动客户端本地的Android组件。
经过测试,发现上述方法是完全可行的,也基本达到了预期目的。
测试源码地址如下,各位看官只需要揣摩一下AndroidManifest.xml文件中的Application节区即可。
源码地址
Android应用之【隐藏桌面图标的一种方法】相关推荐
- 手机计算机桌面图标恢复,三种方法快速找回桌面图标(附电脑文件恢复教程)...
三种方法快速找回桌面图标!大家应该都喜欢把自己经常用到的图标放到桌面上吧.当我们需要进行一些操作的时候,直接点击桌面上的图标就能进入相应的界面.大大节省了我们的时间,让我们的办公更加便捷.如果我们的桌 ...
- 计算机桌面图标怎么显示出来,显示桌面图标不见了怎么办?显示桌面图标不见了解决方法...
我们的 电脑桌 面有着许多本机自带的图标,如我的电脑, 我的文档 ,回收站等等.点击这些图标进入,就能方便快速地进行电脑操作.而其中有一个名为"显示桌面"的图标,这个图标是用来进行 ...
- Android如何动态更换桌面图标(巨坑)
转载https://blog.csdn.net/pangjl1982/article/details/83308512 1.Android如何动态更换桌面图标 1.1使用场景 APP,在中 ...
- C#隐藏桌面图标和任务栏
最近因为项目需要需要实现桌面图标和任务状态栏的隐藏功能,实现的方式很多,比如修改注册表值,调用windows API函数等.经过一番的查阅,这个功能暂时实现了,或许不是很好的方法,但是我预期的效果达到 ...
- 怎么把桌面计算机隐藏文件,怎么隐藏桌面文件夹名称?隐藏桌面图标下的文字的详细教程...
怎么隐藏桌面文件夹名称?桌面图标一多就会显得很凌乱,特别有的软件名称很长,那么有没有什么方法可以让桌面看起来很清爽呢?当然是有,去掉桌面应用的名称不就简洁清爽了?下面就教大家不利用第三方软件的情况下, ...
- android8.1自定义通知栏,Android 8.1隐藏状态栏图标的实例代码
近期客户需求,状态栏只显示时间和电池图标,如图 状态栏图标的布局文件在frameworks\base\packages\SystemUI\res\layout\status_bar.xml,主要包括通 ...
- upupoo为什么服务器维护中,upupoo怎么隐藏桌面图标 只需两步轻松隐藏
多克斯文件是微软Office2007所开始使用的扩展名,比医生文件所占用的空间更小,但使用低版本的Office 2003无法直接打开多克斯文件,那么我们要如何打开多克斯文件呢? 用了upupoo动态壁 ...
- windows7隐藏桌面计算机,教你win7小技巧之隐藏桌面图标
电脑现已成为我们工作.生活和娱乐必不可少的工具了,在使用电脑的过程中,可能会遇到教你win7小技巧之隐藏桌面图标的问题,如果我们遇到了教你win7小技巧之隐藏桌面图标的情况,该怎么处理怎么才能解决教你 ...
- windows7隐藏桌面计算机,win7小技巧之隐藏桌面图标
小编这里为大家带来这篇关于win7系统小技巧之隐藏桌面图标的教程,很多用户的电脑在使用一段时间之后,屏幕上就放满了各种各样的文件,让人眼花缭乱,那么我们怎样将这些图标暂时的隐藏起来,让桌面变得更整洁呢 ...
最新文章
- keil debug如何在watch直接修改变量值_printf系列教程03_SWO打印输出配置,基于Keil『Debug(printf)Viewer』...
- ue4加速度_ue4粒子实现流血效果
- 优化Neo4j Cypher查询
- 51aspx技术文章汇总搜集
- PHP Overview
- 【原创】Bug管理操作规范个人经验总结
- 微单相机和单反相机的区别?摄影入门第一课
- python图片转文字easyocr_EasyScreenOCR - 图片文字识别工具
- 解决System进程占用80端口,关闭IIS服务
- 费纳姆密码-二进制密码
- 描述十二个异性追求者的拓展
- JPA中的could not initialize proxy - no Session异常分析与解决
- 关于电视剧《狂飙》的一点感悟--贵人相助的重要性
- Screen Wonders for Mac (3D动态视频壁纸) v1.9.1
- 审查元素:html标签消失。
- 光阑,像差和成像光学仪器
- 【笔记】效率脑科学:卓有成效地完成每一项工作
- The system is running out of memory. Please close applications to free memory
- 加速度计、陀螺仪工作原理
- 字符串存储的可修改性