问题
I read all about the activity lifecycle and it's methods.
I still couldt find an answer: When I close my app, from the "open apps" menu (in galaxy4 it's a long press on the home button, in nexus5 it's the right button ...) what method is being called? if any?
In other words, my activity is launching a service. I want to terminate the service if the app (activity) is being closed. (onDestory is not reliable at all as said many times here before)
Thanks in advance!
回答1:
onPause() is the only method that is called always. From onPause() state Android OS can kill this app for many reasons bypassing onStop and onDestroy. I don't think we can control this behavior of unexpected termination smoothly. Service can check for the state of the application periodically.
回答2:
You will go through onPause()
then onStop()
. On pre-Honeycomb (API 11) devices, your app can be killed at any time after onPause()
returns. No more methods called, period. Post-Honeycomb you will at least get onStop()
.
回答3:
Locate with life cycle activity, one sugestion: http://developer.android.com/training/basics/activity-lifecycle/stopping.html
The system call the onPause(), after onStop() and last onDestroy(). You must analyze the best form for include your method. Pay attention in this moment.
来源:https://stackoverflow.com/questions/24759941/what-method-is-being-called-when-i-close-an-app