There are so many buzzwords! You can never remember them all, because people (mostly Google) mint new ones all the times. Here are the ones I’ve run across lately:
Name | Meaning |
---|---|
3G,4G,5G… |
Third, fourth, fifth generation of anything, but commonly used for versions of cellular signal and (in a different series) WiFi, Bluetooth, etc. |
A/B |
Two system partitions for background update, fallback. |
Activity |
One screen the user interacts with |
AGP |
Android Gradle Plugin (whose version number changeth often!) |
AIDL |
Interface Def’n Language |
a.o.* |
Java package android.os.* |
AOSP |
Android Open Source Project |
APEX |
Android Pony EXpress |
Arm |
CPU type used on most mobile devices |
ART |
Android Run Time: a Dalvik replacement (Android 5+) |
ASEC |
Android SEcure Container - security for files on removable storage (Froyo) |
AVB |
Android Verified Boot |
AVC |
SELinux Access Vector Cache, where denials are kept in memory. Used in denial messages. |
a.w.* |
Java package android.widget.* |
AWS |
Not Amazon Web Services, but Advanced Wireless Service, frequency band for 3G/4G cell phone service |
BDSM |
Tool created by Jonathan Levin - Bindump, DumpSys, Service and More dumper |
Binder |
Basic Inter-Process Communication mechanism in Android |
Bionic |
Android’s C library |
blob |
A binary file not supplied in source, usually from chip/hardware vendors |
Broadcast Receiver |
App component for receiving system-wide change notifications |
BSD |
Berkeley Software Distribution - originally from UCB, now several projects presenting an alternative to Linux |
BSP |
Board Support Package/Provider - SoC firmware level |
C++ |
C Incremented aka "C with Classes" for OOP (1977-ish) |
C |
Major computer programming language since 1973; used in VMs and in JNI. Influence C++, Java, C#, many more. |
C# |
Microsoft language which started with Java syntax and CLR api names |
CTS |
Compatibility Test Suite, Google’s test suite for device wishing to ship GMS. |
DAC |
Discretionary Access Control - relies on user to set permissions restrictively |
Dalvik |
Original VM for Android (up to 4.4) |
Dart |
C-family OO Language used in Flutter |
DEX |
Dalvik Executable: Android bytecode format (format still used with ART) |
DTB |
Device Tree Blob - ARM-specific |
DTBO |
Device Tree Blob Overlays - ARM-specific |
DTO |
Device Tree Overlay - ARM-specific hardware description |
eBPF |
Android extensible implementation of Berkeley Packet Filter |
Flutter |
Google toolkit for cross-platform apps, supporting mobile, desktop, web & Fuchsia |
Fuchsia |
Alternate device/mobile operating system from Google (not Linux based) |
GAPP |
Google Apps (also Google Advanced Protection Program for account protection) |
GMS |
Google Mobile Services: code that supports most Google services such as Play, Maps, etc. |
GPU |
Graphics Processor Unit: processor core specialized for, well, graphics processing. Usually generates images that are fed to a separate display controller. |
GSI |
Generic System Image |
HAL |
Hardware Abstraction Layer |
HIDL |
Hardware Interface Definition Language |
HIDL |
Hardware/HAL Interface Def’n - obsolete, AIDL variant for HW vendor interfacing |
Intent |
Java object message representing Intention to perform some action (or notification) |
IPC |
Inter-Process Communication (like networking but on the same system) |
Java |
OO Programming language (1995); original language of most Android apps |
JetPack |
Consolidation of newer APIs (packages androidx.*) |
JNI |
Java Native Interface: allows to run code written in C/C++ |
Kotlin |
Newer language for writing Android apps |
LineageOS |
Community project to build enhanced AOSP images for many devices |
LSM |
Short for Linux Security Modules, a framework which is part of Linux, allows supporting various security implementations. |
LTTng |
Linux Trace Tool NG |
MAC |
Mandatory Access Control, a type of access control via which an OS constrains the ability of code to perform actions - the operation must be allowed both by the MAC policy and by any DAC that has been set |
macro |
A single instruction that expands into a set of instructions when invoked |
Mali |
A family of GPU designs whose IP is owned by Arm. Often used on Arm-based Android designs. |
NAN |
Neighborhood Aware Networking |
NDK |
Native Devel Kit - tools for JNI dev |
*Nix |
Original 'starnix'; Blanket term for Unix, Linux and like systems |
Nothing |
Anl name of a particular Android OEM |
NSA |
National Security Agency of the United States government. Origin of Ghidra. |
OAT |
'Ahead Of Time' i.e., compiled from DEX to native (acronym reordered for humor) - OAT files are ELF (0x7f 45 4c 46) |
OBB |
Opaque Binary Blob |
ODEX |
Optimized DEX file (magic number is 'dey\n035\0' or 0x64 65 0x79 0a 30 33 35 00) |
ODM |
Original Device Manager - device vendor code level |
OEM |
Original Equipment Manufacturer - a company that makes Android devices |
OOP |
Object-oriented programming |
PID |
Process ID, on Unix/Linux |
Pixel |
Google’s own line of Android devices, named after Picture Element |
Pixel |
Picture Element: Each tiny dot making up an image on screen or on a printer. |
regex |
Regular Expression, a powerful and concise pattern-matching technology. |
RPC |
Remote Procedure Call (Calling a method on a remote object, in Android usually via Binder) |
RIL |
Rollback Index (to prevent malware downgrading your device to a less-secure Android version) |
scontext |
SELinux - Short for Source Context, also referred to as Domain. |
SELinux |
Short for Security-Enhanced Linux. |
SELinux policy |
Policy used by SELinux which specifies a set of permissions. |
Service |
App Component for running in background |
SGL |
Simple Graphics Library (layer over OpenGL/Vulkan) |
SoC |
System on a Chip (these are also used in desktop/laptop PCs) |
SQLite |
SQL subset database that runs in-process; built-in on most mobile OSes |
Starnix |
Google project to let Fuchsia run Android & Linux apps |
/system |
Main Filesystem on Android |
tclass |
SELinux - Short for Target Class. |
tcontext |
SELinux - Short for Target Context. |
Tensor |
Google SOC based on Arm |
Treble |
System re-org to allow easier updating of 3rd-party devices |
UID |
User ID number assigned to each account |
USAP |
Unspecialized App Process (blank from Zygote to become an app) |
vbmeta |
Verified Boot Metadata |
/vendor |
Partition or directory for OEM-specific files |
VINTF |
Vendor Interface Object. If you need to know this, you know it. |
VNDK |
Vendor Native Development Kit, set of vendor-exclusive libraries for building HAL |
Vulkan |
Graphics API lower level than OpenGL |
XDA |
Community forum for alternate AOSP builders |