Home | History | Annotate | Download | only in appendix
      1 page.title=Glossary
      2 @jd:body
      3 
      4 <p>The list below defines some of the basic terminology of the Android platform. </p>
      5     <dl>
      6     <dt id="apk">.apk file</dt> <dd>Android application package file. Each
      7     Android application is compiled and packaged in a single file that
      8     includes all of the application's code (.dex files), resources, assets,
      9     and manifest file. The application package file can have any name but
     10     <em>must</em> use the <code>.apk</code> extension. For example:
     11     <code>myExampleAppname.apk</code>. For convenience, an application package
     12     file is often referred to as an ".apk".
     13     <p>Related: <a href="#application">Application</a>.</p>
     14 </dd>
     15 
     16     <dt id="dex">.dex file </dt>
     17     <dd>Compiled Android application code file. 
     18        <p>Android programs are compiled into .dex (Dalvik Executable) files, which
     19         are in turn zipped into a single .apk file on the device. .dex files can
     20         be created by automatically translating compiled applications written in
     21         the Java programming language.</dd>
     22 
     23     <dt id="action">Action</dt>
     24     <dd>A description of something that an Intent sender wants done. An action is
     25         a string value assigned to an Intent. Action strings can be defined by Android
     26         or by a third-party developer. For example, android.intent.action.VIEW
     27         for a Web URL, or com.example.rumbler.SHAKE_PHONE for a custom application
     28         to vibrate the phone. 
     29     <p>Related: <a href="#intent">Intent</a>.</p>
     30     </dd>
     31 
     32     <dt id="activity">Activity</dt>
     33     <dd>A single screen in an application, with supporting Java code, derived
     34     from the {@link android.app.Activity} class. Most commonly, an activity is
     35     visibly represented by a full screen window that can receive and handle UI
     36     events and perform complex tasks, because of the Window it uses to render
     37     its window. Though an Activity is typically full screen, it can also be
     38     floating or transparent.</dd>
     39 
     40     <dt id="adb">adb</dt>
     41     <dd>Android Debug Bridge, a command-line debugging application included with the
     42         SDK. It provides tools to browse the device, copy tools on the device, and
     43         forward ports for debugging. If you are developing in Eclipse using the
     44 		ADT Plugin, adb is integrated into your development environment. See 
     45 		<a href="{@docRoot}guide/developing/tools/adb.html">Android Debug Bridge</a>
     46 		for more information. </dd>
     47 
     48     <dt id="application">Application</dt>
     49     <dd>From a component perspective, an Android application consists of one
     50     or more activities, services, listeners, and intent receivers. From a
     51     source file perspective, an Android application consists of code,
     52     resources, assets, and a single manifest. During compilation, these files
     53     are packaged in a single file called an application package file (.apk).
     54     <p>Related: <a href="#apk">.apk</a>, <a href="#activity">Activity</a></p></dd>
     55 
     56     <dt id="canvas">Canvas</dt>
     57     <dd>A drawing surface that handles compositing of the actual bits against
     58     a Bitmap or Surface object. It has methods for standard computer drawing
     59     of bitmaps, lines, circles, rectangles, text, and so on, and is bound to a
     60     Bitmap or Surface. Canvas is the simplest, easiest way to draw 2D objects
     61     on the screen. However, it does not support hardware acceleration, as
     62     OpenGL ES does. The base class is {@link android.graphics.Canvas}.
     63     <p>Related: <a href="#drawable">Drawable</a>, <a href="#opengles">OpenGL
     64     ES</a>.</p></dd>
     65 
     66     <dt id="contentprovider">Content Provider</dt>
     67     <dd>A data-abstraction layer that you can use to safely expose your
     68     application's data to other applications. A content provider is built on
     69     the {@link android.content.ContentProvider} class, which handles content
     70     query strings of a specific format to return data in a specific format.
     71     See <a href="{@docRoot}guide/topics/providers/content-providers.html">
     72 	Content Providers</a> topic for more information.
     73     <p>Related: <a href="#uri">URI Usage in Android</a></p></dd>
     74 
     75     <dt id="dalvik">Dalvik</dt>
     76     <dd>The Android platform's virtual machine. The Dalvik VM is an
     77     interpreter-only virtual machine that executes files in the Dalvik
     78     Executable (.dex) format, a format that is optimized for efficient storage
     79     and memory-mappable execution. The virtual machine is register-based, and
     80     it can run classes compiled by a Java language compiler that have been
     81     transformed into its native format using the included &quot;dx&quot; tool.
     82     The VM runs on top of Posix-compliant operating systems, which it relies
     83     on for underlying functionality (such as threading and low level memory
     84     management). The Dalvik core class library is intended to provide a
     85     familiar development base for those used to programming with Java Standard
     86     Edition, but it is geared specifically to the needs of a small mobile
     87     device.</dd>
     88 
     89     <dt id="ddms">DDMS</dt>
     90     <dd>Dalvik Debug Monitor Service, a GUI debugging application included
     91     with the SDK. It provides screen capture, log dump, and process
     92     examination capabilities. If you are developing in Eclipse using the ADT
     93     Plugin, DDMS is integrated into your development environment. See <a
     94     href="{@docRoot}guide/developing/tools/ddms.html">Dalvik Debug Monitor
     95     Server</a> to learn more about the program.</dd>
     96 
     97     <dt id="dialog">Dialog</dt> <dd> A floating window that that acts as a lightweight
     98     form. A dialog can have button controls only and is intended to perform a
     99     simple action (such as button choice) and perhaps return a value. A dialog
    100     is not intended to persist in the history stack, contain complex layout,
    101     or perform complex actions. Android provides a default simple dialog for
    102     you with optional buttons, though you can define your own dialog layout.
    103     The base class for dialogs is {@link android.app.Dialog Dialog}. 
    104     <p>Related: <a href="#activity">Activity</a>.</p></dd>
    105 
    106     <dt id="drawable">Drawable</dt>
    107     <dd>A compiled visual resource that can be used as a background, title, or
    108     other part of the screen. A drawable is typically loaded into another UI
    109     element, for example as a background image. A drawable is not able to
    110     receive events, but does assign various other properties such as "state"
    111     and scheduling, to enable subclasses such as animation objects or image
    112     libraries. Many drawable objects are loaded from drawable resource files
    113     &mdash; xml or bitmap files that describe the image. Drawable resources
    114     are compiled into subclasses of {@link android.graphics.drawable}. For
    115     more information about drawables and other resources, see <a
    116     href="{@docRoot}guide/topics/resources/resources-i18n.html">Resources</a>. 
    117     <p>Related: <a href="#resources">Resources</a>, <a href="#canvas">Canvas
    118     </a></p></dd>
    119 
    120     <dt id="intent">Intent</dt>
    121     <dd>An message object that you can use to launch or communicate with other
    122     applications/activities asynchronously. An Intent object is an instance of
    123     {@link android.content.Intent}. It includes several criteria fields that you can
    124     supply, to determine what application/activity receives the Intent and
    125     what the receiver does when handling the Intent. Available criteria include
    126     include the desired action, a category, a data string, the MIME type of
    127     the data, a handling class, and others. An application sends
    128     an Intent to the Android system, rather than sending it directly to
    129     another application/activity. The application can send the Intent to a
    130     single target application or it can send it as a broadcast, which can in
    131     turn be handled by multiple applications sequentially. The Android system
    132     is responsible for resolving the best-available receiver for each Intent,
    133     based on the criteria supplied in the Intent and the Intent Filters
    134     defined by other applications. For more information, see <a
    135     href="{@docRoot}guide/topics/intents/intents-filters.html">Intents and
    136     Intent Filters</a>. 
    137     <p>Related: <a href="#intentfilter">Intent Filter</a>, <a
    138     href="#broadcastreceiver">Broadcast Receiver</a>.</p></dd>
    139 
    140     <dt id="intentfilter">Intent Filter</dt>
    141     <dd>A filter object that an application declares in its manifest file, to
    142     tell the system what types of Intents each of its components is willing to
    143     accept and with what criteria. Through an intent filter, an application
    144     can express interest in specific data types, Intent actions, URI formats,
    145     and so on. When resolving an Intent, the system evaluates all of the
    146     available intent filters in all applications and passes the Intent to the
    147     application/activity that best matches the Intent and criteria. For more
    148     information, see <a
    149     href="{@docRoot}guide/topics/intents/intents-filters.html">Intents and
    150     Intent Filters</a>. 
    151     <p>Related: <a href="#intent">Intent</a>, <a
    152     href="#broadcastreceiver">Broadcast Receiver</a>.</p></dd>
    153 
    154     <dt id="broadcastreceiver">Broadcast Receiver </dt>
    155     <dd>An application class that listens for Intents that are broadcast,
    156     rather than being sent to a single target application/activity. The system
    157     delivers a broadcast Intent to all interested broadcast receivers, which
    158     handle the Intent sequentially. 
    159     <p>Related: <a href="#intent">Intent</a>, <a href="#intentfilter">Intent 
    160     Filter</a>.</p> </dd>
    161 	
    162     <dt id="layoutresource">Layout Resource</dt>
    163     <dd>An XML file that describes the layout of an Activity screen. 
    164     <p>Related: <a href="#resources">Resources</a></p></dd>
    165 
    166     <dt id="manifest">Manifest File</dt>
    167     <dd>An XML file that each application must define, to describe the
    168     application's package name, version, components (activities, intent
    169     filters, services), imported libraries, and describes the various
    170     activities, and so on. See <a
    171     href="{@docRoot}guide/topics/manifest/manifest-intro.html">The
    172     AndroidManifest.xml File</a> for complete information.</dd>
    173 
    174     <dt id="ninepatch">Nine-patch / 9-patch / Ninepatch image</dt>
    175     <dd>A resizeable bitmap resource that can be used for backgrounds or other
    176     images on the device. See <a
    177     href="{@docRoot}guide/topics/resources/available-resources.html#ninepatch">
    178     Nine-Patch Stretchable Image</a> for more information. 
    179     <p>Related: <a href="#resources">Resources</a>.</p></dd>
    180 
    181     <dt id="opengles">OpenGL ES</dt>
    182     <dd> Android provides OpenGL ES libraries that you can use for fast,
    183     complex 3D images. It is harder to use than a Canvas object, but
    184     better for 3D objects. The {@link android.opengl} and 
    185     {@link javax.microedition.khronos.opengles} packages expose 
    186     OpenGL ES functionality. 
    187     <p>Related: <a href="#canvas">Canvas</a>, <a href="#surface">Surface</a></p></dd>
    188 
    189     <dt id="resources">Resources</dt>
    190     <dd>Nonprogrammatic application components that are external to the
    191     compiled application code, but which can be loaded from application code
    192     using a well-known reference format. Android supports a variety of
    193     resource types, but a typical application's resources would consist of UI
    194     strings, UI layout components, graphics or other media files, and so on.
    195     An application uses resources to efficiently support localization and
    196     varied device profiles and states. For example, an application would
    197     include a separate set of resources for each supported local or device
    198     type, and it could include layout resources that are specific to the
    199     current screen orientation (landscape or portrait). For more information
    200     about resources, see <a
    201     href="{@docRoot}guide/topics/resources/index.html"> Resources and
    202     Assets</a>. The resources of an application are always stored in the
    203     <code>res/*</code> subfolders of the project. </dd>
    204 
    205     <dt id="service">Service</dt>
    206     <dd>An object of class {@link android.app.Service} that runs in the
    207     background (without any UI presence) to perform various persistent
    208     actions, such as playing music or monitoring network activity. 
    209     <p>Related: <a href="#activity">Activity</a></p></dd>
    210 
    211     <dt id="surface">Surface</dt>
    212     <dd>An object of type {@link android.view.Surface} representing a block of
    213     memory that gets composited to the screen. A Surface holds a Canvas object
    214     for drawing, and provides various helper methods to draw layers and resize
    215     the surface. You should not use this class directly; use 
    216     {@link android.view.SurfaceView} instead. 
    217     <p>Related: <a href="#canvas">Canvas</a></p></dd>
    218 
    219     <dt id="surfaceview">SurfaceView</dt>
    220     <dd>A View object that wraps a Surface for drawing, and exposes methods to
    221     specify its size and format dynamically. A SurfaceView provides a way to
    222     draw independently of the UI thread for resource-intensive operations
    223     (such as games or camera previews), but it uses extra memory as a result.
    224     SurfaceView supports both Canvas and OpenGL ES graphics. The base class is
    225     {@link android.view.SurfaceView}.
    226     <p>Related: <a href="#canvas">Surface</a></p></dd>
    227 
    228     <dt id="theme">Theme</dt>
    229     <dd>A set of properties (text size, background color, and so on) bundled
    230     together to define various default display settings. Android provides a
    231     few standard themes, listed in {@link android.R.style} (starting with
    232     &quot;Theme_&quot;). </dd>
    233 
    234     <dt id="uri">URIs in Android</dt>
    235     <dd>Android uses URI strings as the basis for requesting data in a content
    236     provider (such as to retrieve a list of contacts) and for requesting
    237     actions in an Intent (such as opening a Web page in a browser). The URI
    238     scheme and format is specialized according to the type of use, and an
    239     application can handle specific URI schemes and strings in any way it
    240     wants. Some URI schemes are reserved by system components. For example,
    241     requests for data from a content provider must use the
    242     <code>content://</code>. In an Intent, a URI using an <code>http://</code>
    243     scheme will be handled by the browser. </dd>
    244 
    245     <dt id="view">View</dt>
    246 	<dd>An object that draws to a rectangular area on the screen and handles
    247     click, keystroke, and other interaction events. A View is a base class for
    248     most layout components of an Activity or Dialog screen (text boxes,
    249     windows, and so on). It receives calls from its parent object (see
    250     viewgroup, below)to draw itself, and informs its parent object about where
    251     and how big it would like to be (which may or may not be respected by the
    252     parent). For more information, see {@link android.view.View}. 
    253     <p>Related: <a href="#viewgroup">Viewgroup</a>, <a href="#widget">Widget
    254     </a></p></dd>
    255 
    256     <dt id="viewgroup">Viewgroup</dt>
    257     <dd> A container object that groups a set of child Views. The viewgroup is
    258     responsible for deciding where child views are positioned and how large
    259     they can be, as well as for calling each to draw itself when appropriate.
    260     Some viewgroups are invisible and are for layout only, while others have
    261     an intrinsic UI (for instance, a scrolling list box). Viewgroups are all
    262     in the {@link android.widget widget} package, but extend 
    263     {@link android.view.ViewGroup ViewGroup}. 
    264     <p>Related: <a href="#view">View</a></p></dd>
    265 
    266     <dt id="widget">Widget</dt>
    267     <dd>One of a set of fully implemented View subclasses that render form
    268     elements and other UI components, such as a text box or popup menu.
    269     Because a widget is fully implemented, it handles measuring and drawing
    270     itself and responding to screen events. Widgets are all in the 
    271     {@link android.widget} package. </dd>
    272 
    273  <!-- 
    274     <dt id="panel">Panel</dt>
    275     <dd> A panel is a concept not backed by a specific class. It is a View of
    276     some sort that is tied in closely to a parent window, but can handle
    277     clicks and perform simple functions related to its parent. A panel floats
    278     in front of its parent, and is positioned relative to it. A common example
    279     of a panel (implemented by Android) is the options menu available to every
    280     screen. At present, there are no specific classes or methods for creating
    281     a panel &mdash; it's more of a general idea. </dd>
    282 -->
    283 
    284     <dt id="panel">Window</dt>
    285     <dd>In an Android application, an object derived from the abstract class
    286     {@link android.view.Window} that specifies the elements of a generic
    287     window, such as the look and feel (title bar text, location and content of
    288     menus, and so on). Dialog and Activity use an implementation of this class
    289     to render a window. You do not need to implement this class or use windows
    290     in your application. </dd>
    291 
    292 
    293 </dl>