Glossary: Android App Development Fundamentals

Welcome! This alphabetized glossary contains many terms used in this course. Understanding these terms is essential when working in the industry, participating in user groups, and participating in other certificate programs.

Estimated time: 5 minutes

Term Definition
Activity A part of the app that usually represents the screen and the area where user interactions happen.
Android Debug Bridge (ADB) A type of command-line tool that enables users to communicate with a device in Android Studio's tool suite.
Android ecosystem A collection of Android-powered devices and services.
Android Market (CQL) The former name of Google Play Store.
Android Runtime (ART) A managed environment to run Android applications, offering improved performance and battery efficiency.
Android Software Development Kit (SDK) The software development kit that includes the tools to develop Android apps during the initial setup of Android Studio.
Android Studio The official Integrated Development Environment (IDE) for Google's Android operating system.
Android Studio Emulator A virtual device integrated into Android Studio that replicates the configuration of a real Android device for testing apps.
Android Support Library A library that offers backward-compatible versions of Android framework APIs.
Animation and transitions A method that creates fluid and dynamic user experiences through UI elements animation.
BlueStacks An external emulator with a user-friendly interface and high performance, primarily used for playing Android games on PCs.
Bottom navigation A type of bar that enables easy exploration and switching between top levels using a single tap.
Broadcast receiver A component that responds to events such as device boot completion or incoming SMS messages.
Button A widget that enables the user to click to perform an action.
Cards A UI component that displays content and actions on a single topic.
CheckBox A widget that allows users to select multiple options from a set.
ConstraintLayout A type of layout in Android Studio that allows complex positioning and sizing of widgets while maintaining a flat hierarchy.
Content provider A component that manages access to a structured set of data by providing ways for apps to share data using a standard interface.
Core libraries A set of APIs that enables developers to build Android apps.
Custom views A UI component created by extending existing views or combining multiple views into a new one.
Dart A programming language that builds natively compiled mobile, web, and desktop applications from a single codebase.
Dialogs A UI component that provides users with the prompts to input or show important information.
Double tap A gesture used for zooming in content or for activating a specific feature.
EditText A subclass of TextView that enables users to input and edit text.
Emulator A tool in Android Studio that enables developers to test applications on various virtual devices.
Floating action button (FAB) A button that promotes the primary actions in an app.
FrameLayout A type of layout that blocks out an area on the screen and displays a single item.
Fragments A modular section of an activity that creates dynamic and flexible UI designs.
Genymotion A type of advanced emulator that offers high-performance, cloud-based, and on-premises solutions for developers.
GestureDetector A type of class that detects simple gestures such as taps and swipes.
Gradle The build system of Android Studio that automates tasks such as compiling code, packaging APK files, and running tests.
Hardware abstraction layer (HAL) A layer in Android's architecture that provides standard interfaces and simplifies hardware access.
ImageButton A button with an image (instead of text).
ImageView A UI widget that displays images in various formats.
Integrated development environment (IDE) A software application that offers comprehensive tools, such as a code editor, debugger, and automation tools, to facilitate software development.
Java A traditional and robust programming language for Android development that offers extensive libraries.
Java API framework A collection of Java APIs that provides components for app development, such as view systems, resource managers, notification managers, activity managers, and content providers.
JetBrains' IntelliJ IDEA A Java-integrated development environment that developers use for the development of computer software.
Jetpack Compose A modern toolkit that builds native UI in Android and is supported in Android Studio version 2021.1.1.
Kotlin A programming language preferred for Android development.
Layout Editor A graphical interface in Android Studio that designs app layouts using drag-and-drop functionality.
LinearLayout A type of layout that arranges children in a single row or column.
Linux kernel An abstraction layer between hardware and software that manages memory, processes, networking, and hardware drivers.
Long press A touch gesture that holds down an element and brings up a context menu or drag-and-drag options.
Material design A design language that provides an intuitive user interface.
Material theme A design language that provides foundational components, colors, typography, and shapes across Android applications.
MotionEvent An object that provides details about the touch event, including coordinates, action, and pressure.
Navigation area The section of the app screen that contains navigation elements within the app.
Navigation bar A part of the screen that allows users to navigate through the device interface.
Navigation drawer A panel that slides in from the screen's side and provides navigation options.
Navigation graph An XML resource that defines all possible paths and interactions in the app.
Network simulation A process of simulating different network conditions, such as varying bandwidths, latency, and packet loss, to test app behavior.
Notification A message displayed outside an app's interface to remind users of important information or updates.
Notification drawer A pull-down section from the status bar that displays detailed notification entries and actions.
NoxPlayer A popular emulator known for its gaming capabilities and useful for general application testing.
Open-source A type of software that allows users to view, modify, and distribute its source code.
RadioButton A UI widget that allows the user to select one option from a set.
RadioGroup A UI element that ensures that only one option is selectable at a time.
RecyclerView A UI component that displays large datasets in a structured list format efficiently.
RelativeLayout A type of layout that positions its children relative to each other or the parent container.
Resources A type of external file that manages application data and supports multiple languages and screen densities.
Sensor emulation A type of emulator that simulates various device sensors like accelerometer, gyroscope, proximity sensor, and GPS for testing apps that rely on these sensors.
Service A component that runs in the background and performs long-running operations without a user interface.
Snackbar A brief message at the bottom of the screen that provides information about app processes.
Status bar A part of the system bars that displays icons for notifications, battery level, and time.
Status bar notification An icon in the status bar that indicates new notifications.
Swipe A type of gesture that enables scrolling through content, dismissing notifications, or navigating between pages.
Switch A type of toggle switch that can slide between two states.
System bar A bar that combines a status bar and a navigation bar to display important information like battery level, time, and notifications, and provides device interaction from any screen.
Tap A gesture that involves a single touch on the screen, usually triggering a button press or item selection.
TextView A type of widget that displays text on the screen.
User interactions A action performed by users on their devices, such as tapping or swiping, which are fundamental to mobile applications.
User interface (UI) The point of interaction between the user and the app that creates an intuitive app experience.
Version control integration The process of seamlessly integrating Android Studio with version control systems like Git and Subversion, allowing for commit, push, branch management, and diff tools directly within the IDE.
View The basic building block of UI that represents a rectangular area on the screen.
View Class A fundamental building block in Android development that manages touch events in Android.
ViewGroup A container that holds other views (or other ViewGroups) and defines their layout properties.
Widgets A type of interface element placed on the home screen that provides quick access to app data and functions.