Android 4.0屏蔽状态栏(已解决)

Android11屏蔽禁用下拉状态栏 阅读详情

众所周知,安卓4.0以后安全性提高很多,很多之前在2.2的方法,在4.0都实效了。

网上关于屏蔽状态栏的方法很多,以用反射的方法比较多(因为app层没有直接公开可以操控状态栏的类,所以要通过反射),大致如下

		 try{
	            Object service = getSystemService("statusbar");
	            Class<?> statusBarManager = Class.forName("android.app.StatusBarManager");
	            Method expand = statusBarManager.getMethod("collapse");
	            expand.invoke(service);
	        }catch(Exception e)
	        {
	        	
	        }

很多人说这个方法效果不好,我试了下效果确实也不好。于是查看了下API版本号为14的StatusBarManager源码,在总共160多行的代码中,看到了collapse和expand方法,分别对应折叠和展开状态栏,也就是上面代码中的折叠:getMethod("collapse")。

/**
     * Expand the status bar.
     */
    public void expand() {
        try {
            final IStatusBarService svc = getService();
            if (svc != null) {
                svc.expand();
            }
        } catch (RemoteException ex) {
            // system process is dead anyway.
            throw new RuntimeException(ex);
        }
    }
    
    /**
     * Collapse the status bar.
     */
    public void collapse() {
        try {
            final IStatusBarService svc = getService();
            if (svc != null) {
                svc.collapse();
            }
        } catch (RemoteException ex) {
            // system process is dead anyway.
            throw new RuntimeException(ex);
        }
    }


既然源码都是这么写的,说明安卓的状态栏就是按照这个方法来折叠/展开状态栏的,那为什么我们平时还感觉不行呢?

于是我想到了线程,每隔一定的时间执行上面的代码,那么不就可以使用户点不动了吗?!事实证明这个方法确实奏效了(不过貌似有点小小的问题)!

测试后发现,把线程的休眠时间设置为100ms,已经不容易拉下来。当设置为10ms时,基本拉不下来了(不知道这样是不是巨浪费系统资源)。效果达到!

注意:参考了API版本18,发现上面的collapse变成了collapsePanels(),具体的请参考源码。

注意添加权限

 <uses-permission android:name="android.permission.EXPAND_STATUS_BAR"/>


rk3566 安卓11 隐藏导航栏、状态栏,屏蔽下滑状态栏 rk3566 安卓11 实现隐藏导航栏、状态栏,屏蔽下滑状态栏。 阅读详情

相关推荐

Android-状态栏透明导致android:windowSoftInputMode属性失效

今天UI给的新设计稿,要求状态栏透明。透明化的状态看效果还挺不错。大概是这个样子(请忽略这张难看的背景,只是一个Demo): 方法呢,也很简单,onCreate 里一行代码: getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); 同时。因为输入框都在底部,最下面还有一个按钮,所以为了用户体验,需要保

u010255127的专栏 7943

Android隐藏导航栏和状态栏的方法

在onCreate方法的super.onCreate(savedInstanceState)前面添加getSupportActionBar().hide();注意:这种方法会移除整个状态栏,包括时间、电量等信息。注意:这种方法会移除整个导航栏,包括返回键、菜单键等。这个方法只会隐藏导航栏,而其他功能(如返回键、菜单键等)仍然会显示。这个方法只会隐藏状态栏,而其他信息(如时间、电量等)仍然会显示。

king的博客 1万+

Android 系统状态栏的屏蔽与通知栏隐藏

SystemUI 是一个运行在系统级别的应用程序,负责管理状态栏、通知栏以及其他与用户界面相关的功能。通过修改 SystemUI 的配置,我们可以实现定制化的状态栏和通知栏行为。然而,有时候我们可能需要对通知栏进行更高级的控制,比如隐藏通知栏中的特定通知,或者干脆完全屏蔽通知栏的显示。本文将介绍如何使用代码来实现这些功能。综上所述,通过相关的代码实现,我们可以轻松地屏蔽 Android 系统的通知栏显示,并且还能隐藏特定的通知。我们只需调用该方法,并传入要取消的通知的 ID 即可实现隐藏特定通知的功能。

HackDashX的博客 995

android 主题theme风格style

android:theme="@android:style/Theme.Dialog" 将一个Activity显示为能话框模式 android:theme="@android:style/Theme.NoTitleBar" 不显示应用程序标题栏 android:theme="@android:style/Theme.NoTitleBar.Fullscreen" 不显示应用程序标题栏,并全屏

u012441486的专栏 863

Android 10.0 SystemUI 屏蔽状态栏消息推送弹出的悬浮通知

在状态栏中,有一些通知类似 消息推送 弹出的 悬浮通知,弹出30秒之后会消失掉 要想屏蔽掉这些通知,首选知道这些通知是怎么产生的 通知类型 NotificationContentInflater.java 详细的介绍各种通知的类型 frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/NotificationContentInflater.java /** * The defau

安卓兼职framework和app工程师的博客 1542

Android 11.0 SystemUI 屏蔽状态栏消息推送弹出的悬浮通知

在SystemUI的各种定制化也是系统上层常用的功能,状态栏推送消息弹出悬浮通知这个也是在截图闹钟连接特殊wifi等功能上 有的功能,会在截图后 闹钟的时候 和连接一些特殊的wifi 弹出悬浮通知,根据开发需求要求屏蔽掉这些悬浮通知,这首先要分析 这些悬浮通知是怎么弹出来的然后屏蔽掉就可以了 3.SystemUI 屏蔽状态栏消息推送弹出的悬浮通知核心代码分析 3.1NotificationRowContentBinder.java 关于各种通知类型分析 3.2 NotificationCon

安卓兼职framework和app工程师的博客 1722

Android开发中怎么隐藏状态栏

在 Android 开发中,隐藏状态栏的方法如下: 在活动的主题中添加以下代码: <item name="android:windowFullscreen">true</item> 在代码中使用以下方法: getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN)...

weixin_35750483的博客 2472

android 6. 0 屏蔽掉状态栏

diff --git a/android/frameworks/base/core/res/res/values/dimens.xml b/android/frameworks/base/core/res/res/values/dimens.xml index 8635a4f..b0df482 100644 --- a/android/frameworks/base/core/res/res/v...

qq_20395637的博客 357

Android5.0以上去除状态栏半透明遮罩

Android5.0+ 状态栏 半透明灰色遮罩 安卓5.0及以上的版本,透明状态栏有一层遮罩一样的,相当于暗色,部分APP完美适配了透明状态栏,状态栏颜色和APP一体了,但是很多APP仍然是状态栏和APP不是同一个颜色,应该如何修改systemui才能将那个暗色的遮罩去掉呢? 去除前效果 直接贴代码,一目了然: import android.annotation.TargetAp...

Mr_Duoduo的博客 3339

SystemUI 屏蔽原生下拉状态栏的通知区域导致下拉展开高度异常问题

不积跬步无以至千里 1、简叙 由于项目需求需要把下拉状态栏中的通知显示部分屏蔽掉,不让其显示出来,由android7.0移植到android8.0,还是按照以前的屏蔽方式,屏蔽掉了原生的通知区域。 2、问题 发现了如下了,多数情况是挺正常的。如下截图: 图一: 但是当收到电话、短信等一些特殊通知时,会出现如下截图现象: 图二: 被测试提出了这样的bug,当时移植项目之前就感觉多多少少会出现一些问题,毕竟要适配刘海平,出现了,咱们就解决。 3、观察 因为发现是...

Older_Fisher的博客 743

Agent本地部署教程详细步骤

在开始之前,你需要明确你要部署的Agent是什么。如果你需要部署其他Agent,请参考其官方文档调整步骤。

weixin_39673931的博客 2495

安卓游戏时禁止状态栏下拉_Android手机屏蔽状态栏下拉

【声明:】本文是作者(蘑菇v5)原创,版权归作者 蘑菇v5所有,侵权必究。本文首发在简书。如若转发,请注明作者和来源地址!未经授权,严禁私自转载!一、前言:如果是系统级应用,也就是手机厂家植入的应用,比较简单,修改frameworks里代码, 可以参考:基于Android6.0源码修改屏蔽系统下方的虚拟按键以及上方的状态栏。但是如果是在应用层上的,这里使用StatusBarManager实现此功能...

weixin_34439836的博客 3291

手把手教你用gym训练宇树GO2机器人模型(附完整配置文件)

本文提供了一份详细的实战指南,教你如何使用Gym框架为宇树GO2四足机器人搭建强化学习训练环境。文章深入解析了环境配置、参数调试、奖励函数设置等关键步骤,并分享了避开常见陷阱的经验,旨在帮助开发者高效完成模型训练。

oo7890的博客 322

屏蔽Android4.0.3状态栏

Android4.0 状态栏启动 android4.0系统可以运行于平板电脑和手机上面,这样对于状态栏来说,也是有不同风格的,从SystemUi的代码分类我就可以看出来,google考虑了不同情况下状态栏的显示等, 在源代码里面有这么两个文件夹需要注意: com.android.systemui.statusbar.phone 这个是针对手机而需要的status ba...

v5browser 150

DVT Eclipse保姆级入门教程(一)

介绍 waokspace工作区 是Eclipse平台、已安装插件的存储、配置和临时信息的首选项 在工作区可以定义项目,但不需要将源文件导入或者复制到工作区中,可以在项目中指向任何文件夹或者文件; 路径都不要出现中文; 每次启动Eclipse时,都可以创建一个新的工作空间或指定一个现有的工作空间目录; 可以创建许多工作区,每个工作区专用于某种活动。 project项目 首次创建项目时,Eclipse平台会在你指定的目录中创建一个.project项目。 一些插件可能会在项目目录中创建其他信息,例如DVT创

SummerXRT的博客 1万+

全球尺度遥感云计算平台:Google Earth Engine

Google Earth Engine(GEE)是一个基于 Google 云服务基础设施的遥感大数据分析平台,它结合 Google 强大的云计算能力与 NASA、ESA、NOAA 等机构的空间数据,用于在全球尺度解决一些非常重要的社会问题:森林退化、粮食安全、灾害预警、水资源管理、气候监测以及环境保护等。 GEE 官方宣传视频(版权归 Google 所有) Spacefan 的视频 ·303播放 发展背景 2008 年,手握 40 多年 LandSat 数据的美国地质调查局(USG...

qq_41240287的博客 5013

屏蔽Android4.0.3平板底部状态栏

Android4.0 状态栏启动 android4.0系统可以运行于平板电脑和手机上面,这样对于状态栏来说,也是有不同风格的,从SystemUi的代码分类我就可以看出来,google考虑了不同情况下状态栏的显示等, 在源代码里面有这么两个文件夹需要注意: com.android.systemui.statusbar.phone  这个是针对手机而需要的status bar com.andr

yuanxinfei920的博客 414

100多台物理GPU服务器,每台服务器上有8张GPU卡,组网

计算网用 IB/RoCEv2 保证低延迟高带宽,支撑 800+GPU 的分布式训练;管理网和存储网独立部署,避免干扰核心通信;全链路冗余和规范布线,确保集群稳定运行;搭配 Slurm/K8s 和监控工具,实现高效管理。该方案可支撑千亿参数大模型训练,且具备极强的扩展性,未来可平滑扩容至 200 + 台服务器。

weixin_42795092的博客 2020

在Android 7.0隐藏导航栏和状态栏的一些方法

--- by Blue.Wu 背景:近期笔者在某款app时,需求要对导航栏(返回,home键,recent键的那部分)进行隐藏,此外还要做相关操作的屏蔽避免导航栏恢复显示。原本的方案是通过发广播给system ui,在system ui做remove导航栏的操作实现。后来架构设计阶段评估该方案对于外部模块的耦合太强,因此希望对方案进行优化,要求只在app自身做改动就可以实现。经过一番

maetelibom的博客 1万+

密码学:一文看懂Base64算法

Base64常常在我们开发中出现,我们可能只知道它是一串乱码(看不懂的符号),知道有时候知道我们需要把一些数据进行base64编码,有时候需要进行Base64解码。但是却不知道它的作用是什么?它存在的意义是什么?还有它是如何生成的?如何编码和解码?上述的疑问相信在你读完本篇文章之后烟消云散。下面开始正文。Base64是什么?它和加密解密操作有什么关系吗?没错,这就是经过Base64编码后的字符串。对它解码后,我们获得以下内容点个关注,是对我持续创作的最大的鼓励!

Shujie 1万+

ICC2如何写出floorplan信息

不用-exclude 的话rows_tracks / vias /blockages / routing_rules信息都会写出去,即便用了-include {macro ports}也不行,所以不介意这些东西的话可以用以下两种种def方式去写floorplan。write_floorplan用法和write_def一样,因为写出来的文件夹里就包含def,用write_floorplan的好处和innovus saveFPlan一样,都能写出voltage area和bound信息。

m0_61544122的博客 1070

【SystemGestures】屏蔽鼠标悬浮唤出状态栏和手势导航

SystemGesturesPointerEventListener 是 Android 操作系统中一个至关重要的部分,它主要负责监听和处理系统级的指针手势。

特立独行的博客 993

使用机器学习算法预测黄金价格

在本文中,我们将使用线性回归、XGBoost和LSTM这三种不同的机器学习算法来预测黄金价格。接下来,我们使用线性回归、XGBoost和LSTM分别建立了模型,并进行了训练和预测。这些机器学习算法可以帮助我们对黄金价格进行预测,但请注意,市场价格受多种因素影响,因此预测结果可能并不完全准确。接下来,我们需要对数据进行一些预处理,以便用于机器学习模型的训练和测试。我们将使用80%的数据作为训练集,20%的数据作为测试集。最后,我们将绘制每个模型的预测结果,并将其与实际价格进行比较,以评估模型的性能。

QromMatlab的博客 1316

android4.0屏蔽状态栏按钮的方法

最近做个ANDROID项目,需要屏蔽平板底层的导航按钮,难点是APP里不仅有自己写的activity,还有调用别的APP(GSF)里的activity里,不是很好实现,先将已有的不完善的解决方法写出来。 所有的实现都在NEXSU 7上测试的,别的机子没测过,不保证有用。 下面介绍的第五种方法是现在最好的解决方法。通过反射机制获取隐藏服务StatusBarService,调用它的disable(

程序是有生命的精灵 1992

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

[学习记录]android 状态栏背景修改为透明

Android 2.3 1. 请添加半透明的图片资源,例如:statusbar_background.9.png,到路径 alps\frameworks\base\packages\SystemUI\res\drawable-hdpi 下。 2. 请修改status_bar.xml,将其中的android:background="@drawable/status_bar_background

shenmay2012的专栏 2115

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

最新安卓版本对照表,API对照表(持续更新,更新到安卓17)

话不多说,直接上表,持续更新(更新到安卓16)。 列出了所有记录的可能会影响应用开发者的功能和行为变更。请使用此列表查找影响您的变更,然后点击相应的链接以阅读文档。下表列出了所有记录的可能会影响应用开发者的功能和行为变更。请使用此列表查找影响您的变更,然后点击相应的链接以阅读文档。Java 和 OpenJDK 是 Oracle 及/或其关联公司的商标或注册商标。

雨季余静的博客 9万+

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

上一篇: android获取电池电量(无延迟)
下一篇: android中ListView不显示图片
冒泡彩虹
博客等级 码龄14年 17粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值