系统广播android.intent.action.DATE_CHANGED不响应的问题

原网址

背景

要实现 “在到了某个节日的时候,给手机切换壁纸这样一个功能,如果用户当天手动切换过壁纸,则使用用户切换后的壁纸”。

过程

  • 我使用 android.intent.action.DATE_CHANGED监听系统日期的变化广播,
  • 发现只有在日期变化到将来的某一天的时候,才会发出此广播,例如,今天是9月17号,手动设置时间为18号,会触发该广播,这个时候,如果把时间再设置为10月17号,也会触发广播,但是如果再把时间设置为2014年10月17号之前的任何一天,都不会再响应广播!!!
  • 总之就是已经广播过的日期改变,在这之前的日期改变就不会再广播了,只会广播以后的。令人发指啊!

解决方法

  • 鉴于这个原因,我只能使用Intent.ACTION_TIME_TICK这个action来监听时间和日期的变化
  • 这个action每分钟都会被触发,但是这个action只有在动态注册的情况下才有用,在Android.manifest文件中静态注册是不会被触发的。
  • 使用的时候要注意一下。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值