1.设置RTC时间,该时间是如果RCT时钟断电以后使用的默认时间

Android L之前:

\alps\mediatek\custom\[project]\preloader\ inc\cust_rtc.h

\alps\mediatek\custom\[project]\kernel\rtc\rtc\rtc-mt65XX.h

Android L或M:

bootable\bootloader\preloader\custom\ [project] \inc\ cust_rtc.h

#define RTC_DEFAULT_YEA 2019

#define RTC_DEFAULT_MTH 7

#define RTC_DEFAULT_DOM 1

2、修改默认日期:

framework\services\java\com\android\server\NetworkTimeUpdateService.java

/** Initialize the receivers and initiate the first NTP request */
public void systemReady() {
registerForTelephonyIntents();
registerForAlarms();
registerForConnectivityIntents(); mThread = new HandlerThread(TAG);
mThread.start();
mHandler = new MyHandler(mThread.getLooper());
// Check the network time on the new thread
mHandler.obtainMessage(EVENT_POLL_NETWORK_TIME).sendToTarget(); mSettingsObserver = new SettingsObserver(mHandler, EVENT_AUTO_TIME_CHANGED);
mSettingsObserver.observe(mContext); /// M: comment @{ add GPS Time Sync Service
Log.d(TAG, "add GPS time sync handler and looper");
mGpsThread = new HandlerThread(TAG);
mGpsThread.start();
mGpsHandler = new MyHandler(mGpsThread.getLooper()); mGpsTimeSyncObserver = new GpsTimeSyncObserver(mGpsHandler, EVENT_GPS_TIME_SYNC_CHANGED);
mGpsTimeSyncObserver.observe(mContext);
/// @} /// M: Configure default date/time to current year after factory reset or first bootup @{
String icsString = SystemProperties.get(ICS_BOOT_SYS_PROPERTY, "");
boolean isIcsVersion = (icsString != null && "".equals(icsString)) ? false : true;
if(isIcsVersion){
return;
} mDefaultYear = mContext.getResources().getInteger(com.mediatek.internal.R.integer.default_restore_year);
mIsOverMobile = mContext.getResources().getBoolean(com.mediatek.internal.R.bool.config_ntp_by_mobile); String tempString = SystemProperties.get(BOOT_SYS_PROPERTY, "");
boolean isFirstBoot = (tempString != null && "".equals(tempString)) ? true : false;
if(isFirstBoot){
tempString = SystemProperties.get("ro.kernel.qemu", "");
boolean isEmulator = "1".equals(tempString) ? true : false;
if(isEmulator){
Log.d(TAG, "isEmulator:" + tempString);
return;
} String decryptState = SystemProperties.get("vold.decrypt", "");
Log.d(TAG, "decryptState:" + decryptState);
if("".equals(decryptState) || DECRYPT_STATE.equals(decryptState)){
Time today = new Time(Time.getCurrentTimezone());
today.setToNow();
Log.d(TAG, "First boot:" + tempString + " with date:" + today);
//today.set(today.monthDay, today.month, mDefaultYear);
today.set(1, 7, mDefaultYear);//2019.7.1
Log.d(TAG, "Set the year to " + mDefaultYear);
SystemProperties.set(BOOT_SYS_PROPERTY, "false");
SystemClock.setCurrentTimeMillis(today.toMillis(false));
}
}
///@}
}

  

在mediatek\frameworks\base\res\res\values\config.xml里修改

<integer name="default_restore_year"></integer>

最新文章

  1. shell parameter expansitions
  2. UVA1003(dfs+进制转换)
  3. jquery移动端日期插件
  4. CDH的几个包的下载地址
  5. DOS命令符基本操作
  6. jQuery 单选按钮切换
  7. [改善Java代码]静态变量一定要先声明后赋值
  8. jquery插件colortip(tooltip类型)
  9. Android Studio 1.0 苹果电脑安装配置
  10. Float 的那些事
  11. shell脚本之变量与状态码
  12. Web前端框架与类库的思考【转】
  13. JFinal配合Shiro权限控制在FreeMarker模板引擎中控制到按钮粒度的使用
  14. SpringBoot + Spring Security 学习笔记(五)实现短信验证码+登录功能
  15. MySQL随笔(2)
  16. python面试终极准备
  17. vue.js学习系列-第二篇
  18. 逐步搭建vs2015的API自带认证调用+跨域调用
  19. vuetify | vue | 文件上传组件 | file | upload | form input[type=&quot;file&quot;]
  20. 工作随笔—Elasticsearch大量数据提交优化

热门文章

  1. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_04 IO字节流_7_字节输出流的续写和换行
  2. unittest框架扩展(基于代码驱动)自动化-下
  3. 基于nginx实现二维码下载安装apk文件
  4. 使用fiddler,提示系统找不到相应的文件FSE2.exe文件
  5. AWS Cloud Practioner 官方课程笔记 - Part 1
  6. debian下使用shell脚本时出现了 declare:not found 解决方法
  7. [Python3 填坑] 009 深拷贝与浅拷贝
  8. [19/05/14-星期二] HTML_body标签(列表标签和图片标签)
  9. UVA-10462.Is There A Second Way Left(Kruskal+次小生成树)
  10. [2019南京网络赛D题]Robots