Вы можете настроить приемник вещания, который будет перезапускать вашу основную деятельность, когда он получает действия включения или отключения экрана.
<receiver android:name=".AlarmReceiver">
<intent-filter>
<action android:name="android.intent.action.SCREEN_OFF" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SCREEN_ON" />
</intent-filter>
</receiver>
Затем вы можете просто создать простой приемник для запуска желаемой деятельности.
Кроме того, вам нужно убедиться, что ваша активность может отменить экран и заблокировать.
Вы можете сделать это с помощью этого кода;
final Window win = getWindow();
win.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
win.addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
| WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
Надеюсь, это поможет!