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

Android 修改系统时间源码阅读

链接:XRefAndroid - Support Android 16.0 & OpenHarmony 5.0 (AndroidXRef/AospXRef)

这里看的Android 10的代码,选中Android 10,勾选所有工程,搜索DateTimeSettings‌:

看到showTimePicker应该是显示一个设置时间的弹框:

发现当前类没有这个方法,在其父类的父类SettingsPreferenceFragment中找到该方法定义:

看下SettingsDialogFragment如何创建dialog:

接着查看parentFragment(即DateTimeSettings)里面的onCreateDialog代码:

然后看TimePreferenceController这个类的buildTimePicker方法:

而且这里还顺便看到了设置系统时间的方法setTime。 

可见, 系统时间设置,精确到分,秒和毫秒都置为0。 并且还有个“最小日期”时间戳,设置的时间若小于那个最小时间,则置为最小时间。另外,还有个最大时间(Integer.MAX_VALUE,单位:秒),不能大于那个最大时间。 然后调用AlarmManager的setTime方法设置时间:

 ((AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE)).setTime(when);

http://www.lryc.cn/news/600251.html

相关文章:

  • 各种前端框架界面
  • 【GoLang#3】:数据结构(切片 | map 映射)
  • SAP ABAP的数据通过调用泛微Restful API同步数据到OA建模表
  • 《基于雅可比矢量近似的EIT触觉传感灵敏度非均匀校正》论文解读
  • Yocto 项目直播教学|今天晚上 21:30 直播!
  • python---字典(dict)
  • OpenCV图像梯度、边缘检测、轮廓绘制、凸包检测大合集
  • 【Linux手册】操作系统如何管理存储在外设上的文件
  • 2025牛客暑期多校第4场——G
  • MCP协议深度解析:客户端-服务器架构的技术创新
  • CMakeLists.txt 怎么写
  • 电脑开机后网络连接慢?
  • @PathVariable与@RequestParam的区别
  • 【洛谷】单向链表、队列安排、约瑟夫问题(list相关算法题)
  • 刷题日记0725
  • 二开----02
  • 【前端工程化】前端项目开发过程中如何做好通知管理?
  • Model Control Protocol 三层架构设计,三种传输方式,完成MCP项目构建实现工具调试,多维度评价指标检测多工具多资源调用的鲁棒性和稳健性
  • 从零本地部署使用Qwen3-coder进行编程
  • Web开发传参的四种常见方式介绍
  • 太极生两仪,两仪生四象,四象生八卦
  • 智慧电视:开启养老新时代
  • 【图像理解进阶】如何对图像中的小区域进行细粒度的语义分割?
  • [2025CVPR-图象分类方向]CATANet:用于轻量级图像超分辨率的高效内容感知标记聚合
  • Python day24
  • day 35打卡
  • DNS 协议
  • OSI 七层模型和五层模型
  • Effective C++ 条款02:尽量以 const, enum, inline 替换 #define
  • HTTP 请求方法有哪些?