package com.dinhcv.lifelogpedometer.feature; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import com.dinhcv.lifelogpedometer.model.Shareprefer.Setting; import com.dinhcv.lifelogpedometer.utils.Utils; public class ShutdownRecevier extends BroadcastReceiver { @Override public void onReceive(final Context context, final Intent intent) { context.startService(new Intent(context, SensorListener.class)); Setting.setPedometerCorrectShutdown(context, true); Database db = Database.getInstance(context); // if it's already a new day, add the temp. steps to the last one if (db.getSteps(Utils.getToday()) == Integer.MIN_VALUE) { int steps = db.getCurrentSteps(); int pauseDifference = steps - Setting.getPedometerPauseCount(context, steps); db.insertNewDay(Utils.getToday(), steps - pauseDifference); if (pauseDifference > 0) { // update pauseCount for the new day Setting.setPedometerPauseCount(context, steps); } } else { db.addToLastEntry(db.getCurrentSteps()); } // current steps will be reset on boot db.close(); } }