Android Open Source - WearPomodoro Pomodoro Notification Service






From Project

Back to project page WearPomodoro.

License

The source code is released under:

GNU General Public License

If you think the Android project WearPomodoro listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Copyright (C) 2014 Alex Korovyansky.//  w  w  w. ja  v a2  s  .  c  o  m
 */
package com.alexkorovyansky.wearpomodoro.app.services;

import android.app.Service;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.IBinder;

import com.alexkorovyansky.wearpomodoro.helpers.PomodoroMaster;
import com.alexkorovyansky.wearpomodoro.helpers.ServiceProvider;

import hugo.weaving.DebugLog;

public class PomodoroNotificationService extends Service {

    private PomodoroMaster pomodoroMaster;
    private BroadcastReceiver broadcastReceiverScreenOff;
    private BroadcastReceiver broadcastReceiverScreenOn;

    public PomodoroNotificationService() {
    }

    @DebugLog
    @Override
    public void onCreate() {
        super.onCreate();
        this.pomodoroMaster = ServiceProvider.getInstance().getPomodoroMaster(this);
        this.broadcastReceiverScreenOn = new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                handleScreenOnOff(true);
            }
        };
        this.broadcastReceiverScreenOff = new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                handleScreenOnOff(false);
            }
        };

        registerReceiver(broadcastReceiverScreenOn, new IntentFilter(Intent.ACTION_SCREEN_ON));
        registerReceiver(broadcastReceiverScreenOff, new IntentFilter(Intent.ACTION_SCREEN_OFF));
    }

    @DebugLog
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        return START_STICKY;
    }

    @DebugLog
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }

    @DebugLog
    @Override
    public void onDestroy() {
        super.onDestroy();
        unregisterReceiver(broadcastReceiverScreenOn);
        unregisterReceiver(broadcastReceiverScreenOff);
    }

    @DebugLog
    private void handleScreenOnOff(boolean isOn) {
        if (!pomodoroMaster.isActive()) {
            stopSelf();
            return;
        }
        pomodoroMaster.syncNotification(isOn);
    }
}




Java Source Code List

com.alexkorovyansky.wearpomodoro.app.MainActivity.java
com.alexkorovyansky.wearpomodoro.app.PomodoroConstants.java
com.alexkorovyansky.wearpomodoro.app.base.BasePomodoroActivity.java
com.alexkorovyansky.wearpomodoro.app.receivers.PomodoroAlarmReceiver.java
com.alexkorovyansky.wearpomodoro.app.receivers.PomodoroAlarmTickReceiver.java
com.alexkorovyansky.wearpomodoro.app.receivers.PomodoroControlReceiver.java
com.alexkorovyansky.wearpomodoro.app.services.PomodoroNotificationService.java
com.alexkorovyansky.wearpomodoro.app.ui.PomodoroEntryActivity.java
com.alexkorovyansky.wearpomodoro.app.ui.PomodoroTransitionActivity.java
com.alexkorovyansky.wearpomodoro.helpers.PersistentStorage.java
com.alexkorovyansky.wearpomodoro.helpers.PomodoroMaster.java
com.alexkorovyansky.wearpomodoro.helpers.PomodoroUtils.java
com.alexkorovyansky.wearpomodoro.helpers.ServiceProvider.java
com.alexkorovyansky.wearpomodoro.helpers.UITimer.java
com.alexkorovyansky.wearpomodoro.helpers.WakefulBroadcastReceiver.java
com.alexkorovyansky.wearpomodoro.model.ActivityType.java