0

I want to kill / fully close an app so it doesn’t run even in the background when I press the screen turn on/off button or if the screen times out. I couldn’t find a solution anywhere on the internet. Can you guys help me out with a code snippet? Thanks

nasty
  • 6,797
  • 9
  • 37
  • 52

3 Answers3

3

you can refer this link to detect screen turn off Screen off Broadcast receiver and for killing the app you can use below code

int pid = android.os.Process.myPid();
android.os.Process.killProcess(pid);
Community
  • 1
  • 1
Hashir Sheikh
  • 1,811
  • 1
  • 14
  • 14
0

first check if the screen is locked inside a service that runs in the background:

KeyguardManager myKM = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE);
if( myKM.inKeyguardRestrictedInputMode()) {
 //it is locked
  getActivity().finish();
  System.exit(0);
} else {
 //it is not locked
}

then you simply kill the app if the screen is locked. hope this will help.

Ahmad Sanie
  • 3,678
  • 2
  • 21
  • 56
0

To make activity like a toast (appear-and-go) add following code into manifest:

<activity   android:name=".YourActivity"
            android:label="YourActivityLabel"
            android:taskAffinity=""
            android:clearTaskOnLaunch="true"
            android:excludeFromRecents="true"
            android:finishOnTaskLaunch="true"
            android:noHistory="true"
            android:launchMode="singleTask">
</activity>
Aleksandr
  • 787
  • 6
  • 22