Sunday, 23 June 2013

Activity Life Cycle | Android Activity Life Cycle

Hello Droid Guys,

1. If an activity in the foreground of the screen (at the top of the stack), it is active or running.
2. If an activity has lost focus but is still visible (that is, a new non-full-sized or transparent
    activity has focus on top of your activity), it is paused. A
    paused activity is completely alive (it maintains all state and member information and
    remains attached to the window manager), but can be killed by the system in extreme
    low memory situations.
3. If an activity is completely obscured by another activity, it is stopped. It still retains all
    state and member information, however, it is no longer visible to
    the user so its window is hidden and it will often be killed by the system when memory
    is needed elsewhere.
4. If an activity is paused or stopped, the system can drop the activity from memory by
    either asking it to finish, or simply killing its process. When it is displayed again to the
    user, it must be completely restarted and restored to its previous state.

android life cycle

1. onCreate() : Called when the activity is first created. This is where you should do all of
    your normal static set up: create views, bind data to lists,etc.  This method also provides
    you with a Bundle containing the activity's previously frozen state, if there was one.
    Always followed by onStart()

 2. onRestart() : Called after your activity has been stopped, prior to it being started again.
     Always followed by onStart()

 3. onStart() : Called when the activity is becoming visible to the user.
                     Followed by onResume() if the activity comes to the foreground, or onStop()
                      if it becomes hidden.                

 4. onResume() :  Called when the activity will start interacting with the user. At this point
                           your activity is at the top of the activity stack, with user input going to it.
     Always followed by onPause().      

 5. onPause() : Called when the system is about to start resuming a previous activity.
     This is typically used to commit unsaved changes to persistent data,stop animations
     and other things that may be consuming CPU, etc. Implementations of this method
     must be very quick because the next activity will not be resumed until this method
     returns.Followed by either onResume() if the activity returns back to the front, or
     onStop() if it becomes invisible to the user.  

 6. onStop() : Called when the activity is no longer visible to the user, because another
     activity has been resumed and is covering this one. This may happen either because a new activity is being started, an existing one is being brought in front of this one, or this one is being destroyed.Followed by either onRestart() if this activity is coming back to interact with the user, or onDestroy() if this activity is going away.

 7. onDestroy() : The final call you receive before your activity is destroyed. This can
     happen either because the activity is finishing (someone called finish() on it, or
     because the system is temporarily destroying this instance of the activity to save space.
    You can distinguish between these two scenarios with the isFinishing() method.  

Mukesh Kumar

Hi Guys I am from Delhi working as Web/Mobile Application Developer(Android Developer), also have knowledge of Roboelctric and Mockito ,android test driven development... Blogging has been my passion and I think blogging is one of the powerful medium to share knowledge and ideas....


  1. Dex Loader] Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace.
    CalendarView] Conversion to Dalvik format failed: Unable to execute dex: java.nio.BufferOverflowException. Check the Eclipse log for stack trace. this wil appear when i try to execute the application?



Copyright @ 2013 Android Developer Blog.

Blog Widget by LinkWithin