您现在的位置是:首页 > 文章详情

systemServer里设置默认时间存在的原生BUG

日期:2018-07-20点击:330

          最近在项目中,需要设备起来的时候默认的系统时间设置到一个相对较新的时间点去,比如2018-07-01 08:00,那么怎么修改呢?我们知道在systemSever里有比较时间的原始功能代码如下:


    在android4.4及以前的平台在这里执行是没有问题的,也就是说在这个地方修改就可以了。然而在android6.0、android7.1平台上都有这样一个bug,在这个位置修改就不行了。请看我们在SystemClock里的跟踪信息:



           很明显这个时候mgr是等于null的,说明这个时候它还没有就绪,然后我们就跟一下ALARM service起来的地方:


我们知道了,调用它的地方起来的时间点比它自己起来还早,那肯定是找不到呢!怎么修改呢?如下:


 就是等服务起来完成以后再去设置默认时间,这样就可以了,如下:


  这样看来android平台一直都有这么一个bug,只不过大家还有很多其他修改的方法,笔者这种方法相对来说还是比较直观的。

原文链接:https://yq.aliyun.com/articles/617003
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章