Activity is a single, focused thing that the user can do. when ever user click on GUI the next Activity will be start and new GUI set base on coding.Activity provides the user interface. When you create an android application in eclipse through the wizard it asks you the name of the activity. Default name is Main Activity. You can provide any name according to the need. Basically it is a class (Main Activity) that is inherited automatically from Activity class. Mostly, applications have one or more activities and the main purpose of an activity is to interact with the user. Activity goes through a number of stages, known as an activities life cycle.
Example :-
When you run the application on Create method is called automatically.
Activity Lifecycle
Activities 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.
- The entire lifetime of an activity happens between the first call to
onCreate(Bundle)
through to a single final call toonDestroy()
. An activity will do all setup of "global" state in onCreate(), and release all remaining resources in onDestroy(). For example, if it has a thread running in the background to download data from the network, it may create that thread in onCreate() and then stop the thread in onDestroy().
- The visible lifetime of an activity happens between a call to
onStart()
until a corresponding call to onstop(). During this time the user can see the activity on-screen, though it may not be in the foreground and interacting with the user. Between these two methods you can maintain resources that are needed to show the activity to the user. For example, you can register a broadcastreceiver in onStart() to monitor for changes that impact your UI, and unregister it in onStop() when the user no longer sees what you are displaying. The onStart() and onStop() methods can be called multiple times, as the activity becomes visible and hidden to the user.
- The foreground lifetime of an activity happens between a call to
onResume()
until a corresponding call toonPause()
. During this time the activity is in front of all other activities and interacting with the user. An activity can frequently go between the resumed and paused states -- for example when the device goes to sleep, when an activity result is delivered, when a new intent is delivered
The following diagram shows the important state paths of an Activity. The square rectangles represent callback methods you can implement to perform operations when the Activity moves between states. The colored ovals are major states the Activity can be in.
Example:-
package com.example.lifecycle;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toast.makeText(this, "Activity is created", Toast.LENGTH_SHORT).show();
Log.i("onCreate():","Activity is created");
onStart();
onRestart();
onResume();
onPause();
onStop();
onDestroy();
}
@Override
protected void onStart() {
// TODO Auto-generated method stub
super.onStart();
Toast.makeText(this, "Activity is started", Toast.LENGTH_SHORT).show();
Log.i("onStart():","Activity started");
}
@Override
protected void onRestart() {
// TODO Auto-generated method stub
super.onRestart();
Toast.makeText(this, "Activity is Restarted", Toast.LENGTH_SHORT).show();
Log.i("onRestart():","Activity Restarted");
}
@Override
protected void onResume() {
// TODO Auto-generated method stub
super.onResume();
Toast.makeText(this, "Activity is Resumed", Toast.LENGTH_SHORT).show();
Log.i("onResume():","Activity Resumed");
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
Toast.makeText(this, "Activity is Paused", Toast.LENGTH_SHORT).show();
Log.i("onPause():","Activity paused");
}
@Override
protected void onStop() {
// TODO Auto-generated method stub
super.onStop();
Toast.makeText(this, "Activity is Stopped", Toast.LENGTH_SHORT).show();
Log.i("onStop():","Activity stopped");
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
Toast.makeText(this, "Activity is Destroyed", Toast.LENGTH_SHORT).show();
Log.i("onDestroy():","Activity destroyed");
}
}
No comments:
Post a Comment