11 系统时间

11.1 时间操作

文件:frameworks/base/core/java/android/os/SystemClock.java

native public static boolean setCurrentTimeMillis(long millis);

转向如下文件

文件:frameworks/base/core/jni/android_os_SystemClock.cpp

static jboolean android_os_SystemClock_setCurrentTimeMillis(JNIEnv* env,

jobject clazz, jlong millis)

{

return (setCurrentTimeMillis(millis) == 0);

}

转向如下文件

文件:frameworks/base/libs/utils/SystemClock.cpp

int setCurrentTimeMillis(int64_t millis)

{

...

#if HAVE_ANDROID_OS

fd = open("/dev/alarm", O_RDWR);

if(fd < 0) {

LOGW("Unable to open alarm driver: %s/n", strerror(errno));

return -1;

}

ts.tv_sec = tv.tv_sec;

ts.tv_nsec = tv.tv_usec * 1000;

res = ioctl(fd, ANDROID_ALARM_SET_RTC, &ts);

if(res < 0) {

LOGW("Unable to set rtc to %ld: %s/n", tv.tv_sec, strerror(errno));

ret = -1;

}

close(fd);

#else

...

}

也就是对设备/dev/alarm进行操作

更多相关文章

  1. 清除Mac中Android studio的配置文件
  2. Android中日期时间格式转换
  3. Android/Linux 的时间和定时器
  4. Android读取assests目录下文件
  5. android 时间,日期对话框
  6. Android时间互换代码
  7. android 资源文件
  8. Android将获取到文件的uri转换为字符串的路径
  9. Android 监听开机广播启动服务 动态注册时间变化监听广播

随机推荐

  1. Android(安卓)Resource介绍和使用(一)
  2. Android的消息机制Handler
  3. Android重难点解析——面试中可能被问到
  4. Android自学笔记:分析onXXX事件监听器中的
  5. Android(安卓)ButterKnife入门到放弃
  6. React-Native之Android(6.0及以上)权限申
  7. Android(安卓)DPAD not enabled in AVD
  8. android的wake_lock介绍
  9. Android的ANR详解(原因和方案)
  10. Android(安卓)绘制文本垂直居中