Skip to content

Instantly share code, notes, and snippets.

@talhahasanzia
Created June 9, 2016 07:21
Show Gist options
  • Save talhahasanzia/5676c85bfb45a2b7c251b9af65407d4a to your computer and use it in GitHub Desktop.
Save talhahasanzia/5676c85bfb45a2b7c251b9af65407d4a to your computer and use it in GitHub Desktop.
Service that calls onReceive() every minute using ACTION_TICK intent
public class BackgroundService extends Service {
private static BroadcastReceiver mTickReceiver;
public BackgroundService()
{
}
@Override
public IBinder onBind(Intent arg0)
{
return null;
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
return START_STICKY;
}
@Override
public void onCreate()
{
registerReceiver();
}
@Override
public void onDestroy()
{
unregisterReceiver(mTickReceiver);
mTickReceiver = null;
}
private void registerReceiver()
{
mTickReceiver = new BroadcastReceiver()
{
@Override
public void onReceive(Context context, Intent intent) // this will fire every minute
{
Log.d("TAG", "TICKS");
// do location update, data sync etc
// do something, e.g. send Intent to main app
}
};
IntentFilter filter = new IntentFilter(Intent.ACTION_TIME_TICK); // this will broadcast Intent every minute
registerReceiver(mTickReceiver, filter);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment