Get Even More Visitors To Your Blog, Upgrade To A Business Listing >>

Android Activities: It All Starts Here

Tags: activity
The main component of any android application is called an activity. An activity is a single, focused thing that the user can do. Almost all activities interact with the user, so the Activity class takes care of creating a window for you in which you can place your UI elements like radio buttons, combo boxed, text boxes and more . While activities are often presented to the user as full-screen windows, they can also be used in other ways: as floating windows. 

All activities have what is called a life cycle. In essence,  a life cycle is how long an activity "will be around" and in the system are managed as an activity stack. When a new activity is started, it is placed on the top of the stack and becomes the running activity -- the previous activity always remains below it in the stack, and will not come to the foreground again until the new activity exits. An activity has essentially four states:
  • If an activity in the foreground of the screen (at the top of the stack), it is active or running.
  • 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.
  • 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.
  • 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.
To know when an activity is in any given state, android will "notify" the developer through what is known as a callback function. Simply put, a callback function is a routine in your program that the actual android system will call when an activity is created or started or even being destroyed.  Below are listed the call back functions that will be called when an activity is in its respective state.


  •  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.
  •  onStart() - Called after your activity has been stopped, prior to it being started again.
  •  onRestart() - Called when the activity is becoming visible to the user.
  •  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.
  •  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.
  •  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.
  •  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.
The activity is the first component in the android system that you should look at, Study it. Get to know it. It is essentially the first domino that needs to be pushed over in the series of domino's that represents your learning journey,




This post first appeared on The Happy Developer, please read the originial post: here

Share the post

Android Activities: It All Starts Here

×

Subscribe to The Happy Developer

Get updates delivered right to your inbox!

Thank you for your subscription

×