Android Glossary

Here are some Android terms (some even with definitions!!)

See also the developer glossary at: http://developer.android.com/guide/appendix/glossary.html

Back to Android Portal

A

 * aapt : Android Asset Packaging Tool - a tool for creating, inspecting and modifying Android application packages.
 * Activity : A single focused thing the user can do on an Android device. Also, a java class in the Android framework, which is used as the superclass for an Activity implementation.  See http://developer.android.com/reference/android/app/Activity.html.  "An Activity presents a visual user interface for one focused endeavor the user can undertake."  See Activity on the page: http://developer.android.com/guide/topics/fundamentals.html
 * adb : Android Debug Bridge - a tool for communicating between the host and a target Android system (including an emulator running on the host). See http://developer.android.com/guide/developing/tools/adb.html
 * ADP1 : Android Developer Phone 1
 * Android : A robot resembling a human being - the name of the operating system produced by Google for mobile phones. Apparently, Andy Rubin, one of the original founders of Android, Inc. loves robots.
 * AndroidManifest.xml : A file describing the contents, permissions and other attributes of an Android application package. See http://developer.android.com/guide/topics/manifest/manifest-intro.html
 * Android, Inc. : A company founded by Andy Rubin and others to create a mobile phone operating system. Android, Inc. was acquired by Google in 2005.
 * ASE : Android Scripting Environment

B

 * Binder : An Interprocess Communication (IPC) mechanism. See http://cs736-android.pbworks.com/IPC-Binder and http://groups.google.com/group/android-developers/msg/dc0e0e872de9b0d2
 * Bionic : small C library used in Android devices
 * Bootchart : A mechanism to create visual charts of a Linux boot sequence, including the timing of process start and execution. See Using Bootchart on Android

C

 * Cliq : The US name for the Motorola Android phone.
 * Content Provider : An piece of software on an Android system that provides information (content) to other software elements. See http://developer.android.com/guide/topics/providers/content-providers.html. Also, a class which is the superclass for code which acts as a content provider.  See the ContentProvider class documentation
 * Cupcake : The code name for Android version 1.5.

D

 * Dalvik : Virtual Machine in which Android applications are run. This VM executes Dalvik bytecode, which is compiled from programs written in the Java language.  Note that the Dalvik VM is not a Java VM (JVM).
 * Every Android application runs in its own process, with its own instance of the Dalvik virtual machine. Dalvik has been written so that a device can run multiple VMs efficiently. The Dalvik VM executes files in the Dalvik Executable (.dex) format which is optimized for minimal memory footprint. The VM is register-based, and runs classes compiled by a Java language compiler that have been transformed into the .dex format by the included "dx" tool.
 * Every Android application runs in its own process, with its own instance of the Dalvik virtual machine. Dalvik has been written so that a device can run multiple VMs efficiently. The Dalvik VM executes files in the Dalvik Executable (.dex) format which is optimized for minimal memory footprint. The VM is register-based, and runs classes compiled by a Java language compiler that have been transformed into the .dex format by the included "dx" tool.


 * Donut : The code name for Android version 1.6
 * Dream : Code name for the mobile phone hardware publicly called the t-Mobile G1, in the United States.
 * Droid : The name for an upcoming Android phone by Motorola (I believe this is the high-end phone, and Cliq is the low-end phone?)

E

 * Eclair : The code name for Android version 2.1

F

 * fastboot : a program which communicates with the developer firmware, and which is capable of loading new software on the ADP1 phone (including re-writing the flash partitions on the device). See Android Fastboot
 * FreeType : An open-source set of fonts and font system
 * Froyo : Frozen Yogurt - The code name for Android version 2.2

G

 * G1 : The name of the first Android-based mobile phone, from t-Mobile.
 * Galaxy : The name of the first Samsung Android phone
 * Gingerbread ; The code name for Android version 3.0(??)
 * Goldfish : The name of a virtual ARM platform provided by the emulator.
 * Goldfish executes ARM926T instructions and has hooks for input and output -- such as reading key presses from or displaying video output in the emulator. There is a "goldfish" configuration file for compiling the Linux kernel to run with this emulated platform.
 * Goldfish executes ARM926T instructions and has hooks for input and output -- such as reading key presses from or displaying video output in the emulator. There is a "goldfish" configuration file for compiling the Linux kernel to run with this emulated platform.


 * Google : A large web search company, and primary developer of Android

I

 * init : the first user-space program run in the Android system. It is not a standard Linux-style 'init' program (which processes an /etc/inittab file).  Rather, it processes a script called init.rc in the root directory of the file system.
 * Intent : A facility to send messages between different Android components.  A message is conveyed using an Intent object, which is a data structure holding a description of an operation to be performed, or of something that has happened and is being announced.

J

 * Java : Java is a programming language originally developed by Sun, and used to develop Android applications.
 * It is important to note that while the Java language is used for Android applications, the Java bytecode and Java virtual machine are not. for more information, see the entry for Dalvik.
 * It is important to note that while the Java language is used for Android applications, the Java bytecode and Java virtual machine are not. for more information, see the entry for Dalvik.


 * JDK : Java Development Kit

L

 * Linux : An open source operating system kernel, developed originally by Linus Torvalds, but over time by many thousands of developers worldwide.
 * Live-android : A project to create an Android live-CD, for running Android on generic x86 platforms.
 * logcat: A command to view messages in one of the system logs. See Android logger

M

 * manifest file: See AndroidManifest.xml
 * mahimahi: The machine name used in the kernel for the development board used for the Nexus One product.
 * MSM : Mobile Station Modem. Chipset manufactured by Qualcomm. Can for instance be found in cell phones containing the Snapdragon chipsets (HTC Desire/Nexus One).

O

 * OpenGL ES : 3D graphics system and API for Android applications

R

 * repo : Android repository manager. This is a wrapper program (written in Python) over the git tool, for managing the multiple git repositories that make up the entire Android code base. See http://source.android.com/download/using-repo
 * rild : Radio-Interface-Link daemon. This is the daemon which handles communication between the rest of the Android system and the "radio interface" (otherwise known as the phone portion of an Android-based mobile phone system).  In the simulator, since the phone hardware is not present, there is a program which runs to simulate the radio interface.

S

 * Saphire
 * SGL : 2D graphics layer for Android applications
 * SQLite : A powerful and lightweight relational database engine used by the Android system components, and available to all Android applications.

T

 * TARGET_PRODUCT : An environment variable used by the build system to indicate the product that the software should be built for. This and other TARGET_* variables are set using the choosecombo function in build/envsetup.sh.
 * If not set, the TARGET_* variables will use defaults when you run the 'm' alias, after source-ing build/envsetup.sh into your shell environment. Otherwise, use the choosecombo function to set them.
 * ex: $ cd mydroid ; source build/envsetup.sh ; choosecombo
 * The options for TARGET_PRODUCT depend on entries in the AndroidProducts.mk files under build/target/products and vendor/*/*/AndroidProducts.mk in your repository.
 * ex: $ cd mydroid ; source build/envsetup.sh ; choosecombo
 * The options for TARGET_PRODUCT depend on entries in the AndroidProducts.mk files under build/target/products and vendor/*/*/AndroidProducts.mk in your repository.
 * The options for TARGET_PRODUCT depend on entries in the AndroidProducts.mk files under build/target/products and vendor/*/*/AndroidProducts.mk in your repository.


 * toolbox : The name of a multi-function program in the Android system. This program contains code for the single program toolbox to act like several different programs and utilities.  Normally 'toolbox' is stored in /system/bin, and is symlinked to other names.  It uses argv[0] to determine which program to behave like, when run.  It is very similar in this regard to 'busybox', which another multi-function program used in many other embedded Linux systems.
 * Trout : ARM linux kernel machine ID for the HTC Dream hardware (used in the t-Mobile G1 and the ADP1)
 * See http://www.arm.linux.org.uk/developer/machines/list.php?id=1440
 * See http://www.arm.linux.org.uk/developer/machines/list.php?id=1440

V

 * vold : volume daemon - a process on an android system responsible for managing mounting and unmounting file system (volumes)

W

 * wakelocks : A kernel mechanism for Android power management. When a thread holds a wakelock, the kernel will refrain from entering a low-power state.

Back to Android Portal

Z

 * zygote : The first Dalvik virtual machine instance. All other java applications that are started in the system are spawned from zygote.