Android 9.0 添加关机铃声功能实现
1.前言
在9.0的系统rom定制化开发中,在原生系统中,关于开机铃声和关机铃声是默认不支持的,系统默认支持开机动画和关机动画等功能,所以关于增加开机铃声和关机
铃声的相关功能,需要自己增加相关的关机铃声功能
2.添加关机铃声功能实现的核心类
frameworks\base\cmds\bootanimation\BootAnimation.h
frameworks\base\cmds\bootanimation\BootAnimation.cpp
3.添加关机铃声功能实现的核心功能分析和实现
3.1在BootAnimation.h中添加播放关机铃声所需的变量和方法
class BootAnimation : public Thread, public IBinder::DeathRecipient
{
....
private:bool mTimeFormat12Hour;bool mShuttingDown;String8 mZipFileName;SortedVector<String8> mLoadedFiles;sp<TimeCheckThread> mTimeCheckThread = nullptr;sp<Callbacks> mCallbacks;//add core startbool soundplay();bool soundstop();bool playSoundsAllowed();String8 mSoundFileName;sp<MediaPlayer> mp;int mfd;bool mSystemCalled;bool mWaitFor相关文章:
Android 9.0 添加关机铃声功能实现
1.前言 在9.0的系统rom定制化开发中,在原生系统中,关于开机铃声和关机铃声是默认不支持的,系统默认支持开机动画和关机动画等功能,所以关于增加开机铃声和关机 铃声的相关功能,需要自己增加相关的关机铃声功能 2.添加关机铃声功能实现的核心类 frameworks\base\cmds\boo…...
IPv4 和 IPv6 的组成结构和对比
IPv4 和 IPv6 的组成结构和对比IPv4IPv6互联网协议 (IP) 是互联网通信的基础,IP 地址是互联网上每个设备的唯一标识符。目前最常用的 IP 协议是 IPv4,它已经有近 30 年的历史了。然而,IPv4 存在一些问题,例如: 地址空间不足:IPv4 …...
Spring的事务管理
Spring的事务管理Spring的事务管理1、事务的回顾【1】事务的定义【2】事务的ACID原则2、spring事务API介绍【了解】【1】PlatformTransactionManager【1.1】PlatformTransactionManager作用【1.2】PlatformTransactionManager接口【1.3】PlatformTransactionManager实现类【2】…...
MCAL知识点(十六):VADC驱动配置详解(理论基础篇)
目录 1、概述 2、EB配置 2.1、通用界面配置 2.1.1、General 2.1.2、AdcConfigSet_0 2.1.3、AdcGlobinputClass 2.1.4、AdcHwUn...
MySQL--库的操作--校验规则对于数据库的影响--0409
目录 1.库的基础操作 查看数据库 创建数据库 删除数据库 查看建库语句 修改数据库 2.字符集和字符集校验规则 2.1 查看系统默认字符集以及校验规则 2.2 使用特定的字符集创建数据库 2.3 不同校验规则对数据库的影响 2.3.1 大小写验证 2.3.2 排序验证 3.备份和恢复 3.1…...
markdown-it基本使用
markdown-it能够将markdown语法的内容转换为html内容,这样我们使用markdown语法写的笔记,就可以转换作为网页使用了 Markdown语法 Markdown语法图文全面详解(10分钟学会) 基础使用 安装markdown-it npm install markdown-it --save使用markdown-it …...
CMake入门教程【核心篇】8.3对象库
文章目录 知识点实例代码目录代码实现知识点 add_library(libhello OBJECT src/hello.cpp)使用OBJECT 参数可以把对象传入到libhello 中,且不会生成.lib文件 使用变量$<TARGET_OBJECTS:libhello>即可获取,比较实用 实例 代码目录 |-📁prj10 |-- 🎴CMakeLists…...
单片机_CT107D训练平台电路原理图\蓝桥杯训练板\IO扩展模块\74HC138译码器
74HC138译码器(实现3个IO口控制8个引脚实现IO口的扩展) 配置信号放大模块,可以对输入的低电压模拟信号进行放大; 配置 138 译码器,可以做译码实验; 外设可以用存储器映射方式访问,也可以直接控…...
Rabbitmq消息确认机制
1.生产者确认机制 确认消息发送到交换机--Confirm方式 1.1普通Confirm方式 private static void sendMsg(Channel channel) throws IOException, InterruptedException { //开启确认机制 channel.confirmSelect(); //发送消息到exchange St…...
FinClip 云开发实践(附小程序demo)
在开发一个小程序时,除了考虑界面功能逻辑外,还需要后端的数据支持,开发者需要提前考虑服务器、存储和数据库等相关需求的支持能力,此外还可能需要花费时间精力在部署应用、和依赖服务的建设上。 因此,腾讯小程序为…...
真正好用的工业品ERP系统应该是什么样的?
一个好用的进销存ERP系统应该有以下特点: 1. 全面覆盖企业经营流程,包括采购、销售、库存、财务等模块,能够实现全方位的管理和控制。 2. 自定义配置,灵活地适应大多数用户的需求。 3. 数据精准、实时化,支持统计分…...
Shiro重定向
使用了统一认证,然后每次登录,不能定向到用户指定的界面,非得回到首页,所以做了如下改动 1、在FormAuthenticationFilter中在issueSuccessRedirect中加上五句话。 Overrideprotected void issueSuccessRedirect(ServletRequest …...
Greenplum数据库执行器——PartitionSelector执行节点
为了能够对分区表有优异的处理能力,对于查询优化系统来说一个最基本的能力就是做分区裁剪partition pruning,将query中并不涉及的分区提前排除掉。如下执行计划所示,由于单表谓词在parititon key上,在优化期间即可确定哪些可以分区…...
POJ 2311 Cutting Game
POJ 2311 Cutting Game 题目大意 有一张有whw\times hwh个格子的长方形纸张,两个人轮流将当前的纸张中选一张,并沿着格子的边界将这张纸剪成两部分。最先切出只有一个格子的纸张(111\times 111的纸张)的玩家获胜。当双方都采用最…...
CTF-PHP反序列化漏洞1-基础知识
作者:Eason_LYC 悲观者预言失败,十言九中。 乐观者创造奇迹,一次即可。 一个人的价值,在于他所拥有的。可以不学无术,但不能一无所有! 技术领域:WEB安全、网络攻防 关注WEB安全、网络攻防。我的…...
【面试】记一次安恒面试及总结
文章目录SQL 注入sql注入的原理?如何通过SQL注入判断对方数据库类型?补充一下其他方法判断数据库类型时间盲注的函数XPath注入抓不到http/https包,怎么办?app无自己的ssl证书app有自己的ssl证书-证书绑定(SSL pinning)逻辑漏洞有哪…...
刹车制动(卡钳)TOP3供应商份额超50%,哪些本土供应商突围
作为中国本土底盘系统供应商最早切入的细分市场之一,乘用车(液压)刹车制动器(含卡钳)由连接到车轮的制动盘和位于制动盘边缘的卡钳组成。制动时,高压刹车油推动刹车片夹紧刹车盘,从而产生制动效…...
Go分布式爬虫笔记(二十二)
文章目录22 辅助任务管理:任务优先级、去重与失败处理设置爬虫最大深度避免请求重复设置优先队列设置随机User-Agent失败处理22 辅助任务管理:任务优先级、去重与失败处理 设置爬虫最大深度 目的: 防止访问陷入到死循环控制爬取的有效链接的数量 最大…...
跨线程修改主界面
winform 方式: public delegate void MyInvoke(string str1); private void check_Click(object sender, RoutedEventArgs e) { //跨现场调度1 delete委托 WIMFORM Task.Run(() > { …...
国内ChatGPt研发-中国chatGPT
人工智能软件chatGPT Chat GPT是一种自然语言处理算法,采用了深度学习技术,用于实现文本生成和自然语言处理任务。它可以实现自然而然的人机交互,在自然语言生成和问答领域应用广泛。 值得注意的是,Chat GPT本身并不是一款具体的…...
Stash缓存机制终极指南:5个配置技巧大幅提升媒体访问速度
Stash缓存机制终极指南:5个配置技巧大幅提升媒体访问速度 【免费下载链接】stash An organizer for your porn, written in Go. Documentation: https://docs.stashapp.cc 项目地址: https://gitcode.com/gh_mirrors/st/stash Stash是一款用Go语言开发的媒体…...
Qwen3.5-4B模型Proteus电路仿真辅助:原理图分析与代码生成
Qwen3.5-4B模型Proteus电路仿真辅助:原理图分析与代码生成 1. 电子设计学习的新帮手 电子电路设计学习过程中,很多初学者都会遇到这样的困境:面对Proteus中的复杂原理图,既看不懂电路功能,也不知道如何为微控制器编写…...
CyberChef终极指南:浏览器内的免费网络安全瑞士军刀
CyberChef终极指南:浏览器内的免费网络安全瑞士军刀 【免费下载链接】CyberChef CyberChef: 是一个开源的在线工具,可以帮助安全分析师自动化处理和分析网络安全相关的任务,如数据加密、压缩和混淆等。适合安全分析师和网络工程师使用 CyberC…...
网页聊天室--测试报告
一.测试目标及测试任务概括验证网页聊天室各模块的功能完整性,确保用户的登录功能,注册功能,以及首页的聊天会话和好友列表,添加好友的功能符合要求。二.测试文档类别版本/配置硬件荣耀MagicBook 14手动测试浏览器Microsoft Edge …...
大比表氧化铈:催化与净化的新利器
你可能没注意到,一种微小的氧化物粉末,却在工业和环保领域发挥着重要作用。它就是大比表氧化铈。它的独特之处在于每克材料拥有非常大的表面积,可达上百平方米,这意味着它能与更多的气体或反应物接触,从而提升化学反应…...
国内开发者福音:手把手教你用微软Authenticator搞定GitHub 2FA验证(附Recovery Codes保存指南)
国内开发者实战指南:微软Authenticator无缝对接GitHub双重验证 GitHub作为全球最大的代码托管平台,近期强制要求所有开发者账户启用双重身份验证(2FA)。对于国内开发者而言,这一安全措施的实施却面临着诸多实际困难——…...
颠覆传统绘图:3个让技术文档颜值飙升的Mermaid技巧
颠覆传统绘图:3个让技术文档颜值飙升的Mermaid技巧 【免费下载链接】mermaid mermaid-js/mermaid: 是一个用于生成图表和流程图的 Markdown 渲染器,支持多种图表类型和丰富的样式。适合对 Markdown、图表和流程图以及想要使用 Markdown 绘制图表和流程图…...
Windows右键菜单管理终极指南:3分钟打造高效桌面操作环境
Windows右键菜单管理终极指南:3分钟打造高效桌面操作环境 【免费下载链接】ContextMenuManager 🖱️ 纯粹的Windows右键菜单管理程序 项目地址: https://gitcode.com/gh_mirrors/co/ContextMenuManager 你是否曾因Windows右键菜单过于臃肿而烦恼&…...
独立开发者福音:Pixel Fashion Atelier镜像免配置+预设Prompt快速上手指南
独立开发者福音:Pixel Fashion Atelier镜像免配置预设Prompt快速上手指南 1. 为什么选择Pixel Fashion Atelier 如果你是一位独立游戏开发者或像素艺术爱好者,一定遇到过这样的困扰:想要快速生成高质量的像素风格时装素材,却苦于…...
Zotero文献管理效率革命:Ethereal Style插件深度应用指南
Zotero文献管理效率革命:Ethereal Style插件深度应用指南 【免费下载链接】zotero-style zotero-style - 一个 Zotero 插件,提供了一系列功能来增强 Zotero 的用户体验,如阅读进度可视化和标签管理,适合研究人员和学者。 项目地…...
