All The Terms You Need To Know About Android

With the exponential rise in Android smartphone users in the country, it is rather imperative for them to understand the basic terms related to their device so they can fully understand and utilize the functionality of Android OS.

Here’s a list of all the basic terms with their detailed meanings in alphabetical order:

Apps2SD: A method of storing applications and cache on the device’s microSD card.

ADB: Android Debug Bridge (adb) is a versatile command line tool that lets you communicate with an emulator instance or connected Android-powered device. It is a client-server program that includes three components:

• A client, which runs on your development machine. You can invoke a client from a shell by issuing an adb command. Other Android tools such as the ADT plugin and DDMS also create adb clients.

• A server, which runs as a background process on your development machine. The server manages communication between the client and the adb daemon running on an emulator or device.

• A daemon, which runs as a background process on each emulator or device instance.

AMOLED: Active Matrix Organic Light Emitting Diode. Basically, a very colorful, bright, display found in some smartphones.

Apk: Android application package file. Each Android application is compiled and packaged in a single file that includes all of the applications’ code (.dex files), resources, assets, and manifest file. The application package file can have any name but must use the .apk extension. For example: myExampleAppname.apk. For convenience, an application package file is often referred to as an “.apk”.

Alpha: The alpha phase of the release life cycle is the first phase to begin software testing (alpha is the first letter of the Greek alphabet, used as the number 1). In this phase, developers generally test the software using white box techniques. Additional validation is then performed using black box or gray box techniques, by another testing team. Moving to black box testing inside the organization is known as alpha release.

Alpha software can be unstable and could cause crashes or data loss. The exception to this is when the alpha is available publicly (such as a pre-order bonus), in which developers normally push for stability so that their testers can test properly. External availability of alpha software is uncommon in proprietary software. However, open source software, in particular, often have publicly available alpha versions, often distributed as the raw source code of the software.

The alpha phase usually ends with a feature freeze, indicating that no more features will be added to the software. At this time, the software is said to be a feature complete.

Boot Animation: Boot animation is a term for a graphical representation of the boot process of the operating system. Boot animation can be a simple visualization of the scrolling boot messages in the console, but it can also present graphics or some combinations of both.

Unlike splash screens, boot screen or boot animation is not necessarily designed for marketing purposes, but can be to enhance the experience of the user as eye candy, or provide the user with messages (with an added advantage of color coding facility) to diagnose the state of the system.

Bootloader: This small program’s only job is to load other data and programs which are then executed from RAM. Often, multiple-stage boot loaders are used, during which several programs of increasing complexity load one after the other in a process of chain loading.

Bootloop: When your system recycles over and over without entering the main OS.

Beta: It is the software development phase following alpha. It generally begins when the software is feature complete. Software in the beta phase will generally have many more bugs in it than completed software, as well as speed/performance issues. The focus of beta testing is reducing impacts to users, often incorporating usability testing. The process of delivering a beta version to the users is called beta release and this is typically the first time that the software is available outside of the organization that developed it.

The users of a beta version are called beta testers. They are usually customers or prospective customers of the organization that develops the software, willing to test the software without charge, often receiving the final software free of charge or for a reduced price.

Beta version software is often useful for demonstrations and previews within an organization and to prospective customers. Some developers refer to this stage as a preview, prototype, technical preview (TP), or early access.

Some software is kept in perpetual beta—where new features and functionality is continually added to the software without establishing a firm “final” release.

Custom: Independent developers who like to customize their devices beyond the standard options provided often tend to release the fruits of their labor for the rest to enjoy, in form of custom ROMs.

Cache: A component that transparently stores data so that future requests for that data can be served faster. The data that is stored within a cache might be values that have been computed earlier or duplicates of original values that are stored elsewhere. If requested data is contained in the cache (cache hit), this request can be served by simply reading the cache, which is comparatively faster. Otherwise (cache miss), the data has to be recomputed or fetched from its original storage location, which is comparatively slower. Hence, the greater the number of requests that can be served from the cache, the faster the overall system performance becomes.

CIQ: Carrier IQ. A piece of preinstalled software that runs with elevated access in the background of portable devices by default and records everything. It can be exploited to steal information potentially.

Dalvik: The Android platform’s virtual machine. The Dalvik VM is an interpreter-only virtual machine that executes files in the Dalvik Executable (.dex) format, a format that is optimized for efficient storage and memory-mappable execution.

Dalvik Cache: Writable cache that contains the optimized bytecode of all apk files (apps) on your Android device. Having the information in its own cache makes applications load faster and perform better.

EXT2: The ext2 or second extended filesystem is a file system for the Linux kernel. It was initially designed by Rémy Card as a replacement for the extended file system (ext).

ext2 was the default filesystem in several Linux distributions, including Debian and Red Hat Linux, until supplanted more recently by ext3, which is almost completely compatible with ext2 and is a journaling file system. ext2 is still the filesystem of choice for flash-based storage media (such as SD cards, and USB flash drives) since its lack of a journal minimizes the number of writes and flash devices have only a limited number of write cycles. Recent kernels, however, support a journal-less mode of ext4, which would offer the same benefit along with a number of ext4-specific benefits.

EXT3: Third extended filesystem, is a journaled file system that is commonly used by the Linux kernel. It is the default file system for many popular Linux distributions, including Debian. Stephen Tweedie first revealed that he was working on extending ext2 in Journaling the Linux ext2fs Filesystem in a 1998 paper and later in a February 1999 kernel mailing list posting, and the filesystem was merged with the mainline Linux kernel in November 2001. Its main advantage over ext2 is journaling, which improves reliability and eliminates the need to check the file system after an unclean shutdown. Its successor is ext4.

EXT4: It was born as a series of backward compatible extensions to ext3, many of them originally developed by Cluster File Systems for the Lustre file system between 2003 and 2006, meant to extend storage limits and add other performance improvements. However, other Linux kernel developers opposed accepting extensions to ext3 for stability reasons and proposed to fork the source code of ext3, rename it as ext4, and do all the development there, without affecting the current ext3 users. This proposal was accepted, and on 28 June 2006, Theodore Ts’o, the ext3 maintainer, announced the new plan of development for ext4.

FC/FC’s: Short for “force close,” meaning an app that has crashed.

Fastboot: A diagnostic protocol used primarily to modify the flash filesystem in Android smartphones from another computer over a USB connection. It is part of the Android Debug Bridge library.

Utilizing the Fastboot protocol requires that the device be started in a boot loader or Second Program Loader mode in which only the most basic hardware initialization is performed. After enabling the protocol on the device itself it will accept any command sent to it over USB via a command line. Some of most commonly used fastboot commands include:

•flash – Overwrites a partition in flash with a binary image stored on the host computer.

•erase – Erases a partition in flash.

•reboot – Reboots the device into the either the main operating system or the system recovery partition.

•devices – Displays a list of all devices (with Serial #) connected to the host computer.

Flashing: The ROM memory used in smartphones and tablets etc. is often same as flash memory found in SD cards and USB flash drives, simply optimized for better speed and performance while running the operating system.

JIT: The Just-in-Time Compiler. Released with Android 2.2, it’s a method of greatly speeding up apps in Android on the software side.

Kang: Someone writes a code, someone else modifies the code to make their own release, its considered as a kang release.

Kernel: A kernel is a layer of code that allows the OS and applications to interface with your phone’s hardware. The degree in which you can access your phone’s hardware features depends on the quality of code in the kernel. The homebrew (rooting) community for HTC has made several kernel code improvements that give us additional features from our hardware that the stock kernel does not. When you flash a custom ROM, you automatically get a kernel. But you can also flash a standalone kernel ROM on top of the existing one, effectively overwriting it. These days, the difference in custom kernels is less about new features and more about alternate configurations. Choosing a custom kernel is basically choosing one that works best with your ROM.

Launcher: Collectively, the part of the Android user interface on home screens that lets you launch apps, make phone calls, etc. Is built in to Android, or can be purchased in the Android Market.

LCD Density: Pixel density is a measurement of the resolution of devices in various contexts; typically computer displays, image scanners, and digital camera image sensors.

First of all you need to understand that the Android User Interface uses something called a “display independent pixel” or a “dip” (yes, it’s confusing because the density settings are in “dots per inch” or “dpi” which are considered the same as “ppi” or “pixels per inch” as well).

The default LCD Density setting on Android is 160 dpi. As far as the operating system is concerned 1 dip @ 160 dpi = 1 screen pixel. It doesn’t mean that’s actually true, but you’ve gotta start somewhere. In my opinion it would have been a lot nicer if they’d chosen 100 dpi because then it would be an easy percentage thing, but they didn’t so we’re stuck with this formula.

Mod: The act of modifying a piece of hardware or software or anything else for that matter, to perform a function not originally conceived or intended by the designer.

Nandroid: To backup the current running ROM.

Nightly: A build that is performed at the end of each day of development. If you use a continuous integration server, it will generally be configured to build the code and run the unit tests on every check in. At the end of each day you may want to run more extensive tests, regression test and integration tests for example, which take too long to run on each check in and these would be triggered after the nightly build. If you have a full continuously delivery pipeline the nightly build may also be used to deploy the built code to environments for user testing.

Open GL: An open source 3D graphics library used in many devices, including Android devices.

Overclock: To increase the speed of your CPU.

Partition: The phone’s internal memory (not the SD card) is solid-state (flash) memory, AKA NAND. It can be partitioned much like a normal hard drive can be partitioned. The bootloader exists in its own partition. Recovery is another partition; radio, system, cache, etc are all partitions.

Here are the standard partitions on an Android phone:

/misc – not sure what this is for.

/boot – bootloader, kernel

/recovery – holds the recovery program (either clockworkmod or RA recovery for a rooted Evo)

/system – operating system goes here: Android, Sense, boot animation, Sprint crapware, busybox, etc

/cache – cached data from OS usage

/data – user applications, data, settings, etc.

The partitions given below are not android-specific. They are tied to the hardware of the phone, but the kernel may have code allowing Android to interact with said hardware.

/radio – the phone’s radio firmware, controls cellular, data, GPS, bluetooth.

/wimax – firmware for Sprint’s flavor of 4G, WiMax.

Recovery Mode: A small separate operating mode you can boot your device into, used for device administration. Two popular custom recovery modes are Amon Ra and Clockwork.

Rom/Firmware: Read-Only Memory and technically speaking, it refers to the internal storage of a device, which is supposed to contain the operating system instructions that needn’t be modified at all during the device’s normal operation.

Recovery: RecoverySystem contains methods for interacting with the Android recovery system (the separate partition that can be used to install system updates, wipe user data, etc).

Root: The first level of a folder.

Rooting: A process allowing users to attain privileged control (known as “root access”) within Android’s subsystem. Rooting is often performed with the goal of overcoming limitations that carriers and hardware manufacturers put on some devices, resulting in the ability to alter or replace system applications and settings, run specialized apps that require administrator-level permissions, or perform other operations that are otherwise inaccessible to a normal Android user. Rooting is analogous to jailbreaking devices running the Apple iOS operating system or the Sony PlayStation 3. On Android, rooting can also facilitate the complete removal and replacement of the device’s operating system.

Sideloading: It means installing applications without using the official Android Market.

Splash Screen: A splash screen is an image that appears while android is loading. Splash screens cover the entire screen or simply a rectangle near the center of the screen. The splash screens of operating systems and some applications that expect to be run full-screen usually cover the entire screen.

Superuser/SU: On many computer operating systems, the superuser is a special user account used for system administration. Depending on the operating system, the actual name of this account might be: root, administrator or supervisor.

Normal work on such a system is done using ordinary user accounts, and because these do not have the ability to make system-wide changes any viruses and other malware – or simple user errors – do not have the ability to adversely affect a whole system. In organizations, administrative privileges are often reserved for authorized experienced individuals.

Script: The Scripting Layer for Android (abridged as SL4A, and previously named Android Scripting Environment or ASE) is a library that allows the creation and running of scripts written in various scripting languages directly on Android devices. SL4A is designed for developers and is still alpha quality software.

These scripts have access to many of the APIs available to normal Java Android applications, but with a simplified interface. Scripts can be run interactively in a terminal, in the background, or via Locale.

SDK: (SDK or “devkit”) is typically a set of software development tools that allows for the creation of applications for a certain software package, software framework, hardware platform, computer system, video game console, operating system, or similar platform.

Stock: This is the operating system in its default form, without any modifications made to it except for any device-specific support required to run it on the particular device.

Tethering: sharing the Internet connection of an Internet-capable mobile phone with other devices. This sharing can be offered over a wireless LAN (Wi-Fi), Bluetooth, or by physical connection using a cable. In the case of tethering over wireless LAN, the feature may be branded as a mobile hotspot. The Internet-connected mobile phone acts as a portable router when providing tethering services to others.

Underclock: To reduce the speed of your CPU.

Undervolt: Undervolting means taking some of the voltage from the CPU which in return gives a longer battery life and lower temperature during intensive use of the CPU.

Zipalign: An archive alignment tool introduced first time with 1.6 Android SDK (software development kit). It optimizes the way an Android application package (APK) is packaged. Doing so enables the Android operating system to interact with the application more efficiently, and hence has the potential to make the application and overall the whole system much faster. Execution time is minimized for zipaligned applications, resulting is lesser amount of RAM consumption when running the APK.

via: xda-developers forum

Leave a Reply

Your email address will not be published. Required fields are marked *