Fix(guide): Add Android development activity lifecycle
This commit is contained in:
committed by
Heather Kusmierz
parent
426a02c027
commit
b2a3436055
@ -12,6 +12,87 @@ Core components are the essential elements which an app for Android consists of.
|
|||||||
## [Activities](https://developer.android.com/guide/components/activities/)
|
## [Activities](https://developer.android.com/guide/components/activities/)
|
||||||
An _activity_ is a component that has a user interface and represents a single screen. An app can have multiple activities, each of those can be an entry point to the application itself for the user or the system (an app's activity that wants to open another activity that belongs to the same application or to a different one).
|
An _activity_ is a component that has a user interface and represents a single screen. An app can have multiple activities, each of those can be an entry point to the application itself for the user or the system (an app's activity that wants to open another activity that belongs to the same application or to a different one).
|
||||||
|
|
||||||
|
### [Activity Lifecycle](https://developer.android.com/guide/components/activities/activity-lifecycle)
|
||||||
|

|
||||||
|
|
||||||
|
* 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().
|
||||||
|
|
||||||
|
* onRestart():
|
||||||
|
|
||||||
|
> Called after your activity has been stopped, prior to it being started again. Always followed by onStart()
|
||||||
|
|
||||||
|
* 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.
|
||||||
|
|
||||||
|
* 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().
|
||||||
|
|
||||||
|
* onPause ():
|
||||||
|
|
||||||
|
> Called as part of the activity lifecycle when an activity is going into the background, but has not (yet) been killed. The counterpart to onResume(). When activity B is launched in front of activity A, this callback will be invoked on A. B will not be created until A's onPause() returns, so be sure to not do anything lengthy here.
|
||||||
|
|
||||||
|
* onStop():
|
||||||
|
|
||||||
|
> Called when you are no longer visible to the user. You will next receive either onRestart(), onDestroy(), or nothing, depending on later user activity.
|
||||||
|
|
||||||
|
>Note that this method may never be called, in low memory situations where the system does not have enough memory to keep your activity's process running after its onPause() method is called.
|
||||||
|
|
||||||
|
* 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.
|
||||||
|
|
||||||
|
#### Sample code to understand Activity Lifecycle
|
||||||
|
``` java
|
||||||
|
import android.app.Activity;
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.util.Log;
|
||||||
|
public class MainActivity extends Activity {
|
||||||
|
String tag = "LifeCycleEvents";
|
||||||
|
/** Called when the activity is first created. */
|
||||||
|
@Override
|
||||||
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
setContentView(R.layout.main);
|
||||||
|
Log.d(tag, "In the onCreate() event");
|
||||||
|
}
|
||||||
|
public void onStart()
|
||||||
|
{
|
||||||
|
super.onStart();
|
||||||
|
Log.d(tag, "In the onStart() event");
|
||||||
|
}
|
||||||
|
public void onRestart()
|
||||||
|
{
|
||||||
|
super.onRestart();
|
||||||
|
Log.d(tag, "In the onRestart() event");
|
||||||
|
}
|
||||||
|
public void onResume()
|
||||||
|
{
|
||||||
|
super.onResume();
|
||||||
|
Log.d(tag, "In the onResume() event");
|
||||||
|
}
|
||||||
|
public void onPause()
|
||||||
|
{
|
||||||
|
super.onPause();
|
||||||
|
Log.d(tag, "In the onPause() event");
|
||||||
|
}
|
||||||
|
public void onStop()
|
||||||
|
{
|
||||||
|
super.onStop();
|
||||||
|
Log.d(tag, "In the onStop() event");
|
||||||
|
}
|
||||||
|
public void onDestroy()
|
||||||
|
{
|
||||||
|
super.onDestroy();
|
||||||
|
Log.d(tag, "In the onDestroy() event");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
## [Services](https://developer.android.com/guide/components/services)
|
## [Services](https://developer.android.com/guide/components/services)
|
||||||
A _service_ is a component without user interface to perform long-running operations in the background.
|
A _service_ is a component without user interface to perform long-running operations in the background.
|
||||||
There are two kinds of services:
|
There are two kinds of services:
|
||||||
@ -29,3 +110,4 @@ For detailed information about the topic, see the official [Android fundamentals
|
|||||||
|
|
||||||
## Advanced Android Development
|
## Advanced Android Development
|
||||||
To learn advanced Android programming concepts, see Google's [Advanced Android Development](https://developers.google.com/training/courses/android-advanced) course.
|
To learn advanced Android programming concepts, see Google's [Advanced Android Development](https://developers.google.com/training/courses/android-advanced) course.
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user