我有一个广播接收器,当用户手动更改日期时接收事件。但我无法找到他改变的前一个日期。示例 - 如果日期是2014年6月5日,他将其更改为2014年6月1日。我想知道之前的日期是2014年6月5日。请帮忙
答案 0 :(得分:0)
您可以注册ACTION_TIME_TICK
并每分钟记录当前日期。
答案 1 :(得分:-1)
指定更改日期的意图是
android.intent.action.DATE_CHANGED
通过引用教程http://www.tutorialspoint.com/android/android_broadcast_receivers.htm
设置此意图的侦听器创建一个意图过滤器:
static {
s_intentFilter = new IntentFilter();
s_intentFilter.addAction(Intent.ACTION_TIME_TICK);
s_intentFilter.addAction(Intent.ACTION_TIMEZONE_CHANGED);
s_intentFilter.addAction(Intent.ACTION_TIME_CHANGED);
}
和广播接收器:
private final BroadcastReceiver m_timeChangedReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final String action = intent.getAction();
if (action.equals(Intent.ACTION_TIME_CHANGED) ||
action.equals(Intent.ACTION_TIMEZONE_CHANGED))
{
doWorkSon();
}
}
};
注册接收者:
public void onCreate() {
super.onCreate();
registerReceiver(m_timeChangedReceiver, s_intentFilter);
}
取消注册:
public void onDestroy() {
super.onDestroy();
unregisterReceiver(m_timeChangedReceiver);
}