I\'m trying to do something (theoretically) simple with my first app, but I need some help getting started. I\'d like to build an app that tells me how long the screen on my
Better implement as a BroadcastReceiver:
public class ScreenTimeBroadcastReceiver extends BroadcastReceiver {
private long startTimer;
private long endTimer;
private long screenOnTimeSingle;
private long screenOnTime;
private final long TIME_ERROR = 1000;
public void onReceive(Context context, Intent intent) {
Log.i(P.TAG, "ScreenTimeService onReceive");
if(intent.getAction().equals(Intent.ACTION_SCREEN_ON)){
startTimer = System.currentTimeMillis();
}
else if(intent.getAction().equals(Intent.ACTION_SCREEN_OFF)){
endTimer = System.currentTimeMillis();
screenOnTimeSingle = endTimer - startTimer;
if(screenOnTimeSingle < TIME_ERROR) {
screenOnTime += screenOnTime;
}
}
}
}
You will need to register the receiver like this (in onCreate activity for example):
screenTimeBroadcastReceiver = new ScreenTimeBroadcastReceiver();
IntentFilter lockFilter = new IntentFilter();
lockFilter.addAction(Intent.ACTION_SCREEN_ON);
lockFilter.addAction(Intent.ACTION_SCREEN_OFF);
registerReceiver(screenTimeBroadcastReceiver, lockFilter);