package com.achep.base.services;
import android.app.Service;
import android.content.Intent;
import com.achep.base.interfaces.IPowerSave;
import com.achep.base.utils.power.PowerSaveDetector;
/**
* @author Artem Chepurnoy
* @since 4.0.0
*/
public abstract class BaseService extends Service implements IPowerSave {
private PowerSaveDetector mPsd;
/**
* {@inheritDoc}
*/
@Override
public void onCreate() {
super.onCreate();
mPsd = PowerSaveDetector.newInstance(this);
mPsd.start();
}
/**
* {@inheritDoc}
*/
@Override
public void onDestroy() {
mPsd.stop();
super.onDestroy();
}
/**
* {@inheritDoc}
*/
@Override
public void onTaskRemoved(Intent rootIntent) {
mPsd.stop();
super.onTaskRemoved(rootIntent);
}
/**
* {@inheritDoc}
*/
@Override
public boolean isPowerSaveMode() {
return mPsd.isPowerSaveMode();
}
/**
* {@inheritDoc}
*/
@Override
public boolean isNotPowerSaveMode() {
return mPsd.isNotPowerSaveMode();
}
}