Create an intent filter:
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); }
and broadcast receiver:
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(); } } };
register receiver:
public void onCreate() { super.onCreate(); registerReceiver(m_timeChangedReceiver, s_intentFilter); }
EDIT:
and unregister:
public void onDestroy() { super.onDestroy(); unregisterReceiver(m_timeChangedReceiver); }
Ben English Jun 03 2018-11-18T00: 00Z
source share