I want to close my application when it goes background.
My current method is to call finish() in the OnPause() of one of the main activity.
However, in my application there are several activities. When it jump to another activity from my main activity, my main activity will be closed.
It’s not what I excepted. I want my applications closed only when the entire applications goes to background (e.g. via Home key)
Thanks.
You can kill your own app’s process using Process.killProcess(Process.myPid()). If you can’t rely on a callback to you activity to tell you when your app has lost focus, and given that you can’t rely on onPause (as noted above), you could in principle post yourself a suicide note during onPause:
and then have one your other activities intercept and cancel it during onResume:
(You’ll need a way to provide access to the variables across multiple activities.) If the cancelation never comes, then your app will eventually be killed.
Kludgy, but possible, I think.