在日期更改监听器
我的任务是每次更改日期(每隔12点)触发一个刷新或重置我的应用程序的方法。 我试图在网上搜索答案,但我找不到任何东西。 我可以使用android中的任何方法/或监听器吗? 或任何方法? 有什么建议吗?
是的,您可以在Android上收听日期/时间更改。 为此,请在Activity中明确注册BroadcastReceiver以获取以下intentfilter:
android.intent.action.ACTION_TIME_TICK
此意图每分钟发送一次。 您无法通过清单中声明的组件接收此信息,但只能通过使用Context.registerReceiver()显式注册它。
您的Receiver(内部)课程:
private final MyDateChangeReceiver mDateReceiver = new MyDateChangeReceiver(); public class MyDateChangeReceiver extends BroadcastReceiver{ @Override public void onReceive(final Context context, Intent intent) { // compare current time and decide if it's 12 AM Log.d("MyDateChangeReceiver", "Time changed"); } }
在onResume方法中注册它:
registerReceiver(mDateReceiver, new IntentFilter(Intent.ACTION_TIME_TICK));
并且不要忘记在onPause方法中取消注册:
unregisterReceiver(mDateReceiver);
你必须在每个确定的时间间隔检查后台的系统时间,如果你想要的时间(上午12点)与系统时间匹配,那么做你需要做的事情。对于这个任务,你必须使用异步任务或报警管理器如果我没有错,那么这将是你的问题的解决方案,希望这对你有所帮助。
- 了解Android中的AudioTrack断言
- 如何创建videourl表单服务器的缩略图
- 在圆形霍夫变换中,什么是累加器分辨率的反比(dp)以及它如何影响圆检测?
- 具有可变JsonProperty的Jackson Generics(使用generics)
- React-native build error Android – java.lang.UnsupportedClassVersionError:com / android / build / gradle / AppPlugin:不支持的major.minor版本52.0
- Google Play服务中的LocationRequest不会更新,间隔设置为小于1秒。
- OnClickListener没有响应
- EditText on demand小部件
- java.lang.NumberFormatException:无效的int:“null”