当前位置: 首页 > news >正文

MTK Android12 关机界面全屏展示

需求:关机和重启按钮点击后,去掉正在关机的动画和tips,改为一张图片实现。

修改点

修改点如下:
涉及到的修改文件
修改:
\vendor\mediatek\proprietary\packages\apps\SystemUI\src\com\android\systemui\globalactionsGlobalActionsDialogLite.java新增:
\vendor\mediatek\proprietary\packages\apps\SystemUI\res\layout\dialog_fullscreen_tip.xml
\vendor\mediatek\proprietary\packages\apps\SystemUI\res\layout-land\dialog_fullscreen_tip.xml
\vendor\mediatek\proprietary\packages\apps\SystemUI\res\drawable-xxhdpi\reboot_fullscreen_port_bg.png
\vendor\mediatek\proprietary\packages\apps\SystemUI\res\drawable-xxhdpi\reboot_fullscreen_land_bg.png备注:drawable 中的reboot_fullscreen_port_bg.png  reboot_fullscreen_land_bg.png  图片以客户提供的横竖屏图片为准

实现效果如下

mtk Android12 关机、重启 全屏图片显示

代码分析

找到关机相关内容 GlobalActionsLayout.java ->GlobalActionsDialogLite.java->关机的实际操作位置:ShutDownAction

@VisibleForTestingfinal class ShutDownAction extends SinglePressAction implements LongPressAction {ShutDownAction() {super(R.drawable.ic_lock_power_off,R.string.global_action_power_off);}@Overridepublic boolean onLongPress() {mUiEventLogger.log(GlobalActionsEvent.GA_SHUTDOWN_LONG_PRESS);if (!mUserManager.hasUserRestriction(UserManager.DISALLOW_SAFE_BOOT)) {//   mWindowManagerFuncs.reboot(true);return true;}return false;}@Overridepublic boolean showDuringKeyguard() {return true;}@Overridepublic boolean showBeforeProvisioning() {return true;}@Overridepublic void onPress() {mUiEventLogger.log(GlobalActionsEvent.GA_SHUTDOWN_PRESS);// shutdown by making sure radio and power are handled accordingly.mWindowManagerFuncs.shutdown();}}

往里层追代码,如下:

  • onLongPress()-》 mWindowManagerFuncs.reboot(true); 暂不分析,安全模式逻辑去了
  • onPress()->mWindowManagerFuncs.shutdown()->
    GlobalActionsComponent shutdown() ->Service shutdown 关机流程
    ->StatusBarManagerService.java -> reboot方法

retoot 相关源码如下:

 /*** Allows the status bar to reboot the device.*/@Overridepublic void reboot(boolean safeMode

相关文章:

MTK Android12 关机界面全屏展示

需求:关机和重启按钮点击后,去掉正在关机的动画和tips,改为一张图片实现。 修改点 修改点如下: 涉及到的修改文件 修改: \vendor\mediatek\proprietary\packages\apps\SystemUI\src\com\android\systemui\globalactionsGlobalActionsDialogLite.java新增: \vendor\media…...

初识云计算

随着科技的飞速发展,云计算作为一种新兴的信息技术架构,正在逐渐改变我们的工作方式和生活方式。 云计算是什么? 云计算是一种通过互联网提供计算资源和服务的计算模式。它通过互联网将计算和存储资源进行集中和共享,为用户提供…...

golang sync.Cond实现读写锁

直接上代码: package mainimport ("fmt""sync""time" )// RWLock 实现一个简单的读写锁 type RWLock struct {readerCount int // 当前正在读取的读者数量writerCount int // 当前正在写的写者数量mutex sync.Mutex // 保护…...

从通用到定制:营销Agent如何跨越数据鸿沟,实现对话SOP的个性化飞跃

从通用到定制:营销Agent如何跨越数据鸿沟,实现对话SOP的个性化飞跃 1.背景 营销 Agent 指的是在营销过程中洞察客户并作出决策以及行动的 AI 智能体,包括感知、理解、决策、交互、反馈多个模块。对话 SOP 是交互模块中非常重要的部分,如何在缺少数据的情况下快速实现千人…...

设计模式-单例设计模式

单例模式的设计和线程安全 单例模式是一种创建型设计模式,确保一个类只有一个实例,并提供一个全局访问点。实现单例模式时,线程安全性是一个重要考虑因素,特别是在多线程环境中。 1. C11 之前的线程安全实现 在 C11 之前&#…...

23_windows 使用sqlmap、kali使用sqlmap,SQL注入、sqlmap自动注入

sqlmap介绍 安装sqlmap 安装python环境 链接:https://pan.baidu.com/s/16QhhYCppSvuUikhKiOHNgg?pwd9LJY 提取码:9LJY C:\Users\leyilea> python // 测试python能不能用 >>> exit() // 退出 测试sqlmap是否可用 kali中运行sqlmap&#xff…...

WPF学习(12)-Image图像控件+GroupBox标题容器控件

Image图像控件 Image也算是独门独户的控件,因为它是直接继承于FrameworkElement基类。 Image控件就是图像显示控件。Image类能够加载显示的图片格式有.bmp、.gif、.ico、.jpg、.png、.wdp 和 .tiff。要注意的是,加载.gif动画图片时,仅显示第…...

【Linux】基础IO认知

文件 1、回顾C语言中的文件接口2、对文件的理解(阶段一)3、文件操作3、1、C的文件操作接口3、2、认识系统调用接口3、2、强化对fd文件描述符及周边知识的理解 1、回顾C语言中的文件接口 事实上,我们在C语言的学习中了解的文件并不是真正的文件。从语言角度来说&…...

7. Kubernetes核心资源之Service服务实战

**service分类 : ** **ClusterIP : ** 默认类型,自动分配一个【仅集群内部】可以访问的虚拟IP **NodePort : ** 对外访问应用使用,在ClusterIP基础上为Service在每台机器上绑定一个端口,就可以通过: ipNodePort来访问该服务 **LoadBalanc…...

《向量数据库指南》——企业采用非结构化数据的场景及其深远影响

引言 在当今数字化转型的浪潮中,企业数据的种类与规模正以前所未有的速度增长,其中非结构化数据作为信息时代的重要组成部分,其价值日益凸显。Lynn提出的关于企业最先采用非结构化数据的观察,引发了我们对这一领域深入探索的兴趣。Charles的见解则为我们揭示了非结构化数据…...

Linux内核编程(十二)热插拔

本文目录 一、知识点1. 热插拔概念2. 热插拔机制3. Netlink机制 二、内核发送uevent事件到用户空间1. kobject发送uevent事件2. udevadm命令查看★示例代码:★优化:完善kset_uevent_ops(热插拔事件结构体) 三、用户空间使用Netlin…...

七夕警示:探索社工库与网络搜索下的个人隐私泄露与保护策略

随着七夕节的脚步日益临近,空气中弥漫着浪漫与温馨的气息。这个充满爱意的节日,我们沉浸在与心爱之人共享甜蜜时光的同时,不应忽视网络安全和个人隐私保护的重要性。在数字化时代,个人信息泄露的风险无处不在,如何在享…...

Redis-哨兵监控(sentinel)

是什么 Docs 吹哨人巡查监控后台master主机是否故障,如果故障了根据投票数自动将某一个从库转换为新主库,继续对外服务 作用:无人值守运维 能干嘛 1.主从监控 监控主从redis的库是否运行正常 2.消息通知 哨兵可以将故障转移的结果发送给客户端 3.…...

RISC-V反汇编调试记录分享

RISC-V反汇编调试记录分享 本文记录一次使用反汇编进行调试分析。 最近在 rtthread 下适配 MilkV Duo 的硬件定时器驱动时遇到了一些问题,demo 运行时报以下错误: Unhandled Exception 2:Illegal Instruction scause:0x0x0000000000000002,stval:0x0x…...

python上下文管理器 with的使用

python上下文管理器 with是从Python一个语法糖,它是一种上下文管理协议,目的在于把我们之前常见一个开发 try,except 和finally 关键字和一些文件开关闭合资源分配释放等问题都简化。 总结起来使用python 提供的with主要的作用是: 实现自动…...

24/8/8算法笔记 决策树构建鸢尾花

决策树是一种由算法自动设计的模型。在机器学习中,构建决策树的过程通常遵循以下步骤: 特征选择:算法会评估每个特征,并选择一个特征作为节点分裂的依据。这个选择基于某种准则,如信息增益(ID3算法&#xf…...

数据库扩展新篇章:主流分库分表中间件全解析

摘要: 随着企业数据量的激增,传统的单体数据库架构已经无法满足日益增长的性能需求和数据管理复杂性。分库分表技术作为解决这一问题的有效手段,通过将数据水平或垂直地分散到多个数据库中,提高了系统的扩展性和处理能力。本文将详…...

python看图片猜价格游戏,frame 和PhotoImage的使用

import tkinter.messagebox import tkinter import randomwindow tkinter.Tk()window.geometry(800x400)window.title(猜数字游戏)good_price random.randint(10, 100) input_price random.randint(1, 100)def sumit():global good_priceif entry.get() "" or en…...

未来展望:等保测评在网络安全领域的持续创新与发展

在数字化浪潮席卷全球的今天,网络安全已成为维护国家安全、社会稳定和经济发展的关键基石。作为网络安全保障体系的核心组成部分,等级保护测评(简称“等保测评”)在应对日益复杂多变的网络威胁中发挥着不可替代的作用。展望未来&a…...

构建深度学习驱动的多目标检测系统:YOLO模型及应用

随着计算机视觉技术的飞速发展,多目标检测在各种实际应用中发挥着越来越重要的作用。本文将j简单介绍如何构建一个基于深度学习的多目标检测系统,包括数据准备、模型训练、UI界面开发和部署的完整流程。如有部署的想法,想要(UI界面…...

OpenClaw硬件加速:Qwen3-4B-Thinking在GPU环境下的优化

OpenClaw硬件加速:Qwen3-4B-Thinking在GPU环境下的优化 1. 为什么需要GPU加速OpenClaw 去年冬天,当我第一次在MacBook Pro上运行OpenClaw对接Qwen3-4B模型时,一个简单的文件整理任务竟然花费了3分多钟。看着CPU占用率飙升到100%的风扇狂转&…...

实时手机检测-通用入门必看:上传图片→自动标注→坐标导出全流程

实时手机检测-通用入门必看:上传图片→自动标注→坐标导出全流程 1. 引言:让AI帮你“看见”手机 你有没有遇到过这样的场景?需要从一堆照片里快速找出所有包含手机的画面,或者想自动统计一张大合影里有多少人拿着手机&#xff1…...

深入理解ThreadLocal:为什么Entry的Key必须是弱引用?

前言 ThreadLocal是Java并发编程中一个非常重要的工具类,它能为每个线程维护独立的变量副本。但很多开发者对它的理解停留在“每个线程有自己的变量副本”这个层面,对于其内部实现细节,尤其是Entry的Key为什么设计成弱引用,往往一…...

Ubuntu 20.04 手动升级 OpenSSL 3.x 的完整指南

1. 为什么需要手动升级OpenSSL? Ubuntu 20.04默认安装的是OpenSSL 1.1.1版本,虽然这个版本仍然在维护周期内,但新发布的OpenSSL 3.x系列带来了许多重要改进。我在实际项目中遇到过这样的情况:某个新开发的加密功能必须依赖OpenSSL…...

基于OpenCV的航天器自主对接算法原型

南加州大学SURE项目学生开发算法原型,助力航天器对接自动化 作为在新泽西州长大、并在加拿大就读寄宿学校的学生,Derek Chibuzor年少时经常乘坐飞机。这段旅行经历激发了他对飞行的持久兴趣。进入南加州大学后,Chibuzor选择主修航空航天工程。…...

OneTime-BH1750:超低功耗单次测量光照传感器驱动库

1. 项目概述OneTime-BH1750 是一款专为资源受限嵌入式平台设计的轻量级 BH1750 光照传感器驱动库。其核心设计哲学并非追求功能堆砌,而是围绕“极简、极省、极稳”三大工程目标展开:在保证功能完整性的前提下,将代码体积压缩至最小&#xff0…...

Agent 的流程可以随时修改调整吗?深度解析 2026 年智能体动态编排与业务闭环

站在 2026 年的技术节点回望,AI Agent(智能体)早已脱离了最初“对话机器人”的稚嫩标签,演变为企业数字化转型的核心基础设施。针对“Agent 的流程可以随时修改调整吗?”这一核心疑问,答案不仅是肯定的&…...

微服务架构中的服务网格实践:构建更可靠的分布式系统

微服务架构中的服务网格实践:构建更可靠的分布式系统别叫我大神,叫我 Alex 就好。一、引言 大家好,我是 Alex。在微服务架构中,服务间的通信和管理是一个重要的挑战。随着微服务数量的增加,传统的服务治理方式已经难以…...

【LeetCode刷题日记】142.环形链表Ⅱ

🔥个人主页:北极的代码(欢迎来访) 🎬作者简介:java后端学习者 ❄️个人专栏:苍穹外卖日记,SSM框架深入,JavaWeb ✨命运的结局尽可永在,不屈的挑战却不可须臾或…...

Massachusetts:1类道路语义分割数据集Massachusetts数据集包括1个类别类别分别是:road 共计图片809张,分辨率是1500x1500像素数据集是VOC格式训练集图

Massachusetts:1类道路语义分割数据集 Massachusetts数据集包括1个类别 类别分别是:road 共计图片809张,分辨率是1500x1500像素 数据集是VOC格式 训练集图片647张,验证集81张、测试集图片有81 相关UNet、FCN、DeepLabV3、Segform…...