73 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
			
		
		
	
	
			73 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			HTML
		
	
	
	
	
	
| <html>
 | |
| <head>
 | |
| <script type="text/javascript" src="http://www.corp.google.com/style/prettify.js"></script>
 | |
| <script src="http://www.corp.google.com/eng/techpubs/include/navbar.js" type="text/javascript"></script>
 | |
| </head>
 | |
| 
 | |
| <body>
 | |
| 
 | |
| <p>High-level classes encapsulating the overall Android application model.
 | |
| The central class is {@link android.app.Activity}, with other top-level
 | |
| application components being defined by {@link android.app.Service} and,
 | |
| from the {@link android.content} package, {@link android.content.BroadcastReceiver}
 | |
| and {@link android.content.ContentProvider}.  It also includes application
 | |
| tools, such as dialogs and notifications.</p>
 | |
| 
 | |
| <p>This package builds on top of the lower-level Android packages
 | |
| {@link android.widget}, {@link android.view}, {@link android.content},
 | |
| {@link android.text}, {@link android.graphics}, {@link android.os}, and
 | |
| {@link android.util}.</p>
 | |
| 
 | |
| <p>An {@link android.app.Activity Activity} is a specific operation the
 | |
| user can perform, generally corresponding
 | |
| to one screen in the user interface.
 | |
| It is the basic building block of an Android application.
 | |
| Examples of activities are "view the
 | |
| list of people," "view the details of a person," "edit information about
 | |
| a person," "view an image," etc.  Switching from one activity to another
 | |
| generally implies adding a new entry on the navigation history; that is,
 | |
| going "back" means moving to the previous activity you were doing.</p>
 | |
| 
 | |
| <p>A set of related activities can be grouped together as a "task".  Until
 | |
| a new task is explicitly specified, all activites you start are considered
 | |
| to be part of the current task.  While the only way to navigate between
 | |
| individual activities is by going "back" in the history stack, the group
 | |
| of activities in a task can be moved in relation to other tasks: for example
 | |
| to the front or the back of the history stack.  This mechanism can be used
 | |
| to present to the user a list of things they have been doing, moving
 | |
| between them without disrupting previous work.
 | |
| </p>
 | |
| 
 | |
| <p>A complete "application" is a set of activities that allow the user to do a
 | |
| cohesive group of operations -- such as working with contacts, working with a
 | |
| calendar, messaging, etc.  Though there can be a custom application object
 | |
| associated with a set of activities, in many cases this is not needed --
 | |
| each activity provides a particular path into one of the various kinds of
 | |
| functionality inside of the application, serving as its on self-contained
 | |
| "mini application".
 | |
| </p>
 | |
| 
 | |
| <p>This approach allows an application to be broken into pieces, which
 | |
| can be reused and replaced in a variety of ways.  Consider, for example,
 | |
| a "camera application."  There are a number of things this application
 | |
| must do, each of which is provided by a separate activity: take a picture
 | |
| (creating a new image), browse through the existing images, display a
 | |
| specific image, etc.  If the "contacts application" then wants to let the
 | |
| user associate an image with a person, it can simply launch the existing
 | |
| "take a picture" or "select an image" activity that is part of the camera
 | |
| application and attach the picture it gets back.
 | |
| </p>
 | |
| 
 | |
| <p>Note that there is no hard relationship between tasks the user sees and
 | |
| applications the developer writes.  A task can be composed of activities from
 | |
| multiple applications (such as the contact application using an activity in 
 | |
| the camera application to get a picture for a person), and multiple active
 | |
| tasks may be running for the same application (such as editing e-mail messages
 | |
| to two different people).  The way tasks are organized is purely a UI policy
 | |
| decided by the system; for example, typically a new task is started when the
 | |
| user goes to the application launcher and selects an application.
 | |
| </p>
 | |
| 
 | |
| </body>
 | |
| </html>
 | 
