时间由rtc硬件模块来进行维护的,时间更新后会将时间信息写入此硬件模块,在系统启动时,RTC硬件驱动会读取此值进行设置。

关于android的时间
网上资料了解到,android Linux都有两个时间,一个是系统时间,一个是硬件时间(RTC时间)。RTC是实时时钟的英文 缩写,基本上在硬件上都有纽扣电池,不会断电,会一直计时;但系统时钟不一样,系统运行的时候能一直计时,但系统关机或者断电的时候就gg了。所以每次系统开机的时候,会去读取rtc中的硬件时间,写入到系统时间,然后系统时间就自己搞起来了,不再关rtc时间什么事情了。等系统关机或者什么时候,会把时间写入到rtc,这样才能保证下次开机你这个系统的时间不会错乱。

两种简单的方法修改Android系统下的系统默认时间

RK3288_Android7.1调试RTC总结

/kernel/msm-4.9/drivers/rtc/systohc.c

int rtc_set_ntp_time(struct timespec64 now)
{struct rtc_device *rtc;struct rtc_time tm;int err = -ENODEV;if (now.tv_nsec < (NSEC_PER_SEC >> 1))rtc_time64_to_tm(now.tv_sec, &tm);elsertc_time64_to_tm(now.tv_sec + 1, &tm);rtc = rtc_class_open(CONFIG_RTC_SYSTOHC_DEVICE);if (rtc) {/* rtc_hctosys exclusively uses UTC, so we call set_time here,* not set_mmss. */if (rtc->ops &&(rtc->ops->set_time ||rtc->ops->set_mmss64 ||rtc->ops->set_mmss))err = rtc_set_time(rtc, &tm);rtc_class_close(rtc);}return err;
}

frameworks/base/services/core/java/com/android/server/AlarmManagerService.java

// We have to set current TimeZone info to kernel
// because kernel doesn't keep this after reboot
setTimeZoneImpl(SystemProperties.get(TIMEZONE_PROPERTY));// Also sure that we're booting with a halfway sensible current time
if (mNativeData != 0) {final long systemBuildTime = Environment.getRootDirectory().lastModified();if (System.currentTimeMillis() < systemBuildTime) {Slog.i(TAG, "Current time only " + System.currentTimeMillis()+ ", advancing to build time " + systemBuildTime);setKernelTime(mNativeData, systemBuildTime);}
}

system会取当前时间与system分区文件夹的时间进行比较。 如果时间小于文件夹时间,那么就会改成文件夹时间

设置系统时间重启时间置回版本时间分析

只要设置过一次时间,不会出现问题

时间戳
https://tool.lu/timestamp/

系统时间
dateRTC时间
hwclock -r通过(@xx,xx以s为单位)时间戳转换为时间。
date -d @1600335717产品编译信息信息:
adb shell getprop | grep date
获取:"ro.build.date.utc"的值查看system分区时间:
adb shell -> ls -al
如:drwxr-xr-x   1 root   root    3488 2020-09-17 17:41 system

Linux时间系统之RTC时间
获取/设置/重置系统时间

获取时间
# date
Thu Jun 4 22:53:13 PDT 2015
# date +%s
1433483623
# date +%D
06/04/15
# date "+%d %B %Y"
04 June 2015设置时间
#date   //设置时间前
Thu Jun 4 23:09:05 PDT 2015
# date -s "21 June 2016 11:01:20"  //设置时间
Tue Jun 21 11:01:20 PDT 2016
# date   //设置时间后
Tue Jun 21 11:01:22 PDT 2016设置完成后,使用clock -w,不然重启后时间又回到以前的值了$ date +%s --date 19700101 --utc   // 1970-01-01 00:00 UTC
0
$ date +%s --date 20120101 --utc   // 2012-01-01 00:00 UTC
1325376000
$ date +%s --date 20160101 --utc   // 2016-01-01 00:00 UTC
1451606400

Android 恢复出厂设置时间重置相关推荐

  1. android 恢复出厂设置 时间,Android 恢复出厂设置后,时间不能恢复替:2013年1月1日...

    Android 恢复出厂设置后,时间不能恢复为:2013年1月1日 前言         欢迎大家我分享和推荐好用的代码段~~声明         欢迎转载,但请保留文章原始出处: CSDN:http ...

  2. Android 恢复出厂设置(recovery)

    Android 恢复出厂设置基本流程 (1)遥控器/按键板后门键触发,或者应用里面从系统设置里面恢复出厂选项也可触发: // 后面以系统设置的应用触发为例 (2)选择恢复出厂设置之后,就会发送广播&q ...

  3. Android 恢复出厂设置(系统时间不修改)

    Android恢复出厂设置时,只会将/data和/cache分区进行清除,时间和其他分区不会清除, 时间由rtc硬件模块来进行维护的,时间更新后会将时间信息写入此硬件模块,在系统启动时,RTC硬件驱动 ...

  4. Android恢复出厂设置流程分析【Android源码解析十】

    最近看恢复出厂的一个问题,以前也查过这方面的流程,所以这里整理一些AP+framework层的流程: 在setting-->备份与重置--->恢复出厂设置--->重置手机---> ...

  5. android 恢复出厂设置代码流程(Good!)

    android的恢复出厂设置 文章问多一般都是从完整的recover mode讲起,恢复出厂设置只是 recovery mode下一个小部分. recovery mode流程分析的文章很多,比较完整的 ...

  6. android恢复出厂设置流程分析

    原文出自:http://blog.csdn.net/wdaming1986/article/details/11988531 最近看恢复出厂的一个问题,以前也查过这方面的流程,所以这里整理一些AP+f ...

  7. Android 恢复出厂设置上层流程

    最近看恢复出厂的一个问题,以前也查过这方面的流程,所以这里整理一些AP+framework层的流程: 在setting-->备份与重置--->恢复出厂设置--->重置手机---> ...

  8. android 恢复出厂设置流程分析,基于Android系统快速恢复出厂设置方法实现.doc

    基于Android系统快速恢复出厂设置方法实现 基于Android系统快速恢复出厂设置方法实现 摘 要:针对使用Android系统的智能电视进行恢复出厂设置时重置速度慢的情况进行了研究和分析,从其重置 ...

  9. Android:恢复出厂设置

    只有在开发Launcher和Setting一般才会用到恢复出厂设置,恢复出厂设置在应用层开发相对来说比较简单,就是发送广播. Android 9.0之前 Intent intent = new Int ...

最新文章

  1. redis性能测试报告
  2. (转)UITableViewCell复用问题
  3. windows中文字体_如何让 Windows 变「好看」?
  4. XML Schema全接触 (这里主要介绍W3C的Schema标准语法)
  5. 宏块帧内预测的具体过程
  6. linux搭建python运行环境_centos运行.py centos5.5下搭建python开发运行环境 - Linux - 服务器之家...
  7. python标准库学习笔记
  8. 打开html文件图片为什么没有_提高网站打开速度秘诀:压缩html,Javascript和CSS文件...
  9. UI中经常出现的下拉框下拉自动筛选效果的实现
  10. 下行法求最小割集案例_故障树分析方法(FTA)
  11. git 找到冲突_git怎么知道哪个文件冲突
  12. MM-DD-RRRR / MM-DD-YYYY 的区别 (Date format)
  13. 【idm】idm突破cookie封锁 (解决http:1.1 403 forbidden)(附charles使用教程)
  14. 2023计算机毕业设计SSM最新选题之java健身俱乐部5jz0z
  15. 如何爬虫同花顺概念数据?pyppeteer
  16. 【陈工笔记】# Latex中,bib格式转换为bbl格式文件 #
  17. Xilinx 7系列FPGA PCB设计指导(四)
  18. 添加打印机还显示脱机_打印机脱机状态怎么解除
  19. 读书笔记(八)--货币战争金权天下
  20. 教你用wifi广告软件给微信公众帐号吸粉

热门文章

  1. 【算法理论】bin packing 装箱问题
  2. 工具分享:linux中的rar解压安装包(tar)请自行下载(附下载链接)
  3. 在python中、下列哪些说法是错误的-Python支持复数类型,以下哪个说法是错误的?...
  4. 西门子S7-1200小练手之电机星三角启动
  5. STM32IO-光耦-编码器
  6. 为什么要用Qt开发(Qt跨平台应用开发)
  7. Java 实现 蓝桥杯 生兔子问题
  8. Caesar Cipher(线段树维护哈希)
  9. Java使用Poi填充Word表格模板(图片和文字)
  10. 《好好学习》读书笔记心得感悟1400字