Android NITZ 与 NTP 时间和时区的同步

NITZ 与 NTP 
现在Android通过网络同步时间有两种方式:NITZ和NTP,它们使用的条件不同,可以获取的信息也不一样;勾选自动同步功能后,手机首先会尝试NITZ方式,若获取时间失败,则使用NTP方式
一 . NITZ(network identity and time zone)同步时间

NITZ是一种GSM/WCDMA基地台方式,必须插入SIM卡,且需要operator支持;可以提供时间和时区信息

中国大陆运营商基本是不支持的

二. NTP(network time protocol)同步时间

NTP在无SIM卡或operator不支持NITZ时使用,单纯通过网络(GPRS/WIFI)获取时间,只提供时间信息,没有时区信息(因此在不支持NITZ的地区,自动获取时区功能实际上是无效的)

NTP还有一种缓存机制:当前成功获取的时间会保存下来,当用户下次开启自动更新时间功能时会结合手机clock来进行时间更新。这也是没有任何网络时手机却能自动更新时间的原因。
Framework定制系列(三)-----Android系统修改ntpServer服务器地址自动更新时间
1.修改ntpServer服务器地址
代码路径:frameworks/base/core/res/res/values/config.xml
默认服务器地址time.android.com,国内不可用,不多说,直接换cn.ntp.org.cn .pano2上用的是:cn.pool.ntp.org
NTP项目国内时间服务器:cn.pool.ntp.org
NTP项目亚洲时间服务器:asia.pool.ntp.org
cn.ntp.org.cn打造国内最好用的时间服务器

<!-- Remote server that can provide NTP responses. -->
<string translatable="false" name="config_ntpServer">cn.ntp.org.cn</string>

2.修改系统默认时区
代码路径: build/core/main.mk
#set default timezone is Asia/Shanghai
ADDITIONAL_BUILD_PROPERTIES += persist.sys.timezone=Asia/Shanghai

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值