Issue
i want to know in my onPause() and onStop() method if it was called because the screen went off. Therefore i wrote a broadcastReceiver:
public class ScreenReceiver extends BroadcastReceiver {
public static boolean screenOn = true;
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) {
screenOn = false;
} else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) {
screenOn = true;
}
}
}
public class ExampleActivity extends Activity {
@Override
protected void onCreate() {
IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_ON);
filter.addAction(Intent.ACTION_SCREEN_OFF);
BroadcastReceiver mReceiver = new ScreenReceiver();
registerReceiver(mReceiver, filter);
}
@Override
protected void onPause() {
if (ScreenReceiver.screenOn) {
System.out.println("SCREEN TURNED OFF");
} else {
}
super.onPause();
}
@Override
protected void onResume() {
if (!ScreenReceiver.screenOn) {
System.out.println("SCREEN TURNED ON");
} else {
}
super.onResume();
}
}
how is it possible if onPause() was called, because of switching the screen off ?
maybe with this ?
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_POWER) {
return true;
}
return super.onKeyDown(keyCode, event);
}
Solution
ok i got it i use now
pm =(PowerManager) getSystemService(Context.POWER_SERVICE);
if (pm.isScreenOn() == false) { ... }
Answered By - AdrianoCelentano
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.