to top
Android APIs

Package Index - Android SDK

These are the Android APIs. See all API classes.


Contains resource classes used by applications included in the platform and defines application permissions for system features.


The classes in this package are used for development of accessibility service that provide alternative or augmented feedback to the user.


These classes provide functionality for the property animation system, which allows you to animate object properties of any type. int, float, and hexadecimal color values are supported by default. You can animate any other type by telling the system how to calculate the values for that given type with a custom TypeEvaluator.

For more information, see the Animation guide.

Contains high-level classes encapsulating the overall Android application model.

Provides device administration features at the system level, allowing you to create security-aware applications that are useful in enterprise settings, in which IT professionals require rich control over employee devices.

For more information, see the Device Administration guide.

Contains the backup and restore functionality available to applications. If a user wipes the data on their device or upgrades to a new Android-powered device, all applications that have enabled backup can restore the user's previous data when the application is reinstalled.

For more information, see the Data Backup guide.


Contains the components necessary to create "app widgets", which users can embed in other applications (such as the home screen) to quickly access application data and services without launching a new activity.

For more information, see the App Widgets guide.


Provides classes that manage Bluetooth functionality, such as scanning for devices, connecting with devices, and managing data transfer between devices. The Bluetooth API supports both "Classic Bluetooth" and Bluetooth Low Energy.

For more information about Classic Bluetooth, see the Bluetooth guide. For more information about Bluetooth Low Energy, see the Bluetooth Low Energy guide.


Contains classes for accessing and publishing data on a device.

Contains classes for accessing information about an application package, including information about its activities, permissions, services, signatures, and providers.


Contains classes for accessing application resources, such as raw asset files, colors, drawables, media or other other files in the package, plus important device configuration details (orientation, input types, etc.) that affect how the application may behave.

For more information, see the Application Resources guide.

android.database Contains classes to explore data returned through a content provider.
android.database.sqlite Contains the SQLite database management classes that an application would use to manage its own private database.

Provides classes for managing DRM content and determining the capabilities of DRM plugins (agents).

android.gesture Provides classes to create, recognize, load and save gestures. Provides low level graphics tools such as canvases, color filters, points, and rectangles that let you handle drawing to the screen directly.

Provides classes to manage a variety of visual elements that are intended for display only, such as bitmaps and gradients. Contains classes for drawing geometric shapes. Contains classes for manipulation of PDF content.

Provides support for hardware features, such as the camera and other sensors.


Provides support to communicate with USB hardware peripherals that are connected to Android-powered devices.

For more information, see the USB guide.

android.inputmethodservice Base classes for writing input methods (such as software keyboards).

Contains the framework API classes that define Android location-based and related services.

Note: The Google Location Services API, part of Google Play Services, provides a more powerful, high-level framework that automates tasks such as location provider choice and power management. Location Services also provides new features such as activity detection that aren't available in the framework API. Developers who are using the framework API, as well as developers who are just now adding location-awareness to their apps, should strongly consider using the Location Services API.
To learn more about the Location Services API, see Location APIs.

For more information about the framework API, see the Location and Maps guide. Provides classes that manage various media interfaces in audio and video. Provides classes that manage audio effects implemented in the media framework.

Provides classes that allow you to apply a variety of visual effects to images and videos.


Provides APIs that let you interact directly with connected cameras and other devices, using the PTP (Picture Transfer Protocol) subset of the MTP (Media Transfer Protocol) specification. Classes that help with network access, beyond the normal* APIs.

Provides APIs for RTP (Real-time Transport Protocol), allowing applications to manage on-demand or interactive data streaming.

Provides access to Session Initiation Protocol (SIP) functionality, such as making and answering VOIP calls using SIP.

For more information, see the Session Initiation Protocol developer guide.

Provides classes to manage Wi-Fi functionality on the device.

Provides classes to create peer-to-peer (P2P) connections with Wi-Fi Direct.

Provides access to Near Field Communication (NFC) functionality, allowing applications to read NDEF message in NFC tags. A "tag" may actually be another device that appears as a tag.

For more information, see the Near Field Communication guide.


These classes provide access to a tag technology's features, which vary by the type of tag that is scanned.


Provides an OpenGL ES static interface and utilities.

android.os Provides basic operating system services, message passing, and inter-process communication on the device.

Contains classes for the system storage service, which manages binary asset filesystems known as Opaque Binary Blobs (OBBs).

android.preference Provides classes that manage application preferences and implement the preferences UI.


Provides classes for implementing print support in applications and also contains all base classes and abstractions involved in printing.


Provides classes for implementing print services.


Provides convenience classes to access the content providers supplied by Android.


RenderScript provides support for high-performance computation across heterogeneous processors.

For more information, see the RenderScript developer guide.

android.sax A framework that makes it easy to write efficient and robust SAX handlers.

Provides access to a few facilities of the Android security subsystems.


Provides classes that allow you to create spell checkers in a manner similar to the input method framework (for IMEs).

android.speech.tts Support classes to access some of the package features introduced after API level 13 in a backwards compatible fashion. Support android.accessibilityservice classes to assist with development of applications for android API level 4 or later. Support classes to assist with development of applications for android API level 4 or later. Support android.content classes to assist with development of applications for android API level 4 or later. Support classes to assist with development of applications for android API level 4 or later. Support android.database classes to assist with development of applications for android API level 4 or later. Support android.os classes to assist with development of applications for android API level 4 or later. Support android.util classes to assist with development of applications for android API level 4 or later. Support android.util classes to assist with development of applications for android API level 4 or later. Support classes to access some of the android.view.accessibility package features introduced after API level 4 in a backwards compatible fashion. Support android.widget classes to assist with development of applications for android API level 4 or later.

Contains APIs that control the routing of media channels and streams from the current device to external speakers and destination devices.
android.telephony Provides APIs for monitoring the basic phone information, such as the network type and connection state, plus utilities for manipulating phone number strings.
android.telephony.cdma Provides APIs for utilizing CDMA-specific telephony features.
android.telephony.gsm Provides APIs for utilizing GSM-specific telephony features, such as text/data/PDU SMS messages.

A framework for writing Android test cases and suites.

For more information, see the Testing developer guide.


Utility classes providing stubs or mocks of various Android framework building blocks.

For more information, see the Testing guide.

android.test.suitebuilder Utility classes supporting the test runner classes.

Provides classes used to render or track text and text spans on the screen.

android.text.format This package contains alternative classes for some text formatting classes defined in java.util and java.text.

Provides classes that monitor or modify keypad input.

Provides classes used to view or change the style of a span of text in a View object.

android.text.util Utilities for converting identifiable text strings into clickable links and creating RFC 822-type message (SMTP) tokens.

The classes in this package enable "scenes & transitions" functionality for view hiearchies.

android.util Provides common utility methods such as date/time manipulation, base64 encoders and decoders, string and number conversion methods, and XML utilities.
android.view Provides classes that expose basic user interface classes that handle screen layout and interaction with the user.

The classes in this package are used to represent screen content and changes to it as well as APIs for querying the global accessibility state of the system.


Provides classes that handle tweened animations.

android.view.inputmethod Framework classes for interaction between views and input methods (such as soft keyboards).

Provides tools for browsing the web.


The widget package contains (mostly visual) UI elements to use on your Application screen.


Extensible cryptographic service provider infrastructure (SPI) for using and defining services such as Certificates, Keys, KeyStores, MessageDigests, and Signatures.

This package provides the classes and the interfaces needed to build Access Control Lists.

This package provides all the classes and all the interfaces needed to generate, administer and verify X.509 certificates.

This package provides the interfaces needed to generate: (1) Keys for the RSA asymmetric encryption algorithm using the PKCS#1 standard; (2) Keys for the Digital Signature Algorithm (DSA) specified by FIPS-186; (3) Keys for a generic Elliptic Curve asymmetric encryption algorithm.

This package provides the classes and interfaces needed to specify keys and parameters for encryption and signing algorithms.

java.util.concurrent Utility classes commonly useful in concurrent programming.
java.util.concurrent.atomic A small toolkit of classes that support lock-free thread-safe programming on single variables.
java.util.concurrent.locks Interfaces and classes providing a framework for locking and waiting for conditions that is distinct from built-in synchronization and monitors.

This package provides the classes and interfaces for cryptographic applications implementing algorithms for encryption, decryption, or key agreement.


This package provides the interfaces needed to implement the Diffie-Hellman (DH) key agreement's algorithm as specified by PKCS#3.


This package provides the classes and interfaces needed to specify keys and parameter for encryption.


Provides a standard OpenGL interface.

This package provides classes and interfaces needed to use the Secure Sockets Layer (SSL) protocol and the successor Transport Layer Security (TLS) protocol.

This package provides classes and interfaces needed to interact with the application in order to execute the authentication and authorization processes.

This package provides a pluggable and stackable authentication system based on ideas and concepts from the Unix-PAM module.

This package provides classes needed to store X.500 principals and their credentials.

This package is provided only for compatibility reasons.

junit.framework The junit test framework.
junit.runner Utility classes supporting the junit test framework.
org.apache.http The core interfaces and classes of the HTTP components.
org.apache.http.auth The API for client-side HTTP authentication against a server, commonly referred to as HttpAuth.
org.apache.http.auth.params Parameters for configuring HttpAuth.
org.apache.http.client The API for client-side HTTP communication and entry point to the HttpClient module.
org.apache.http.client.methods Request implementations for the various HTTP methods like GET and POST.
org.apache.http.client.params Parameters for configuring HttpClient.
org.apache.http.client.protocol Additional request and response interceptors.
org.apache.http.client.utils Helpers and utility classes for HttpClient.
org.apache.http.conn The client-side connection management and handling API at the heart of what is referred to as HttpConn.
org.apache.http.conn.params Parameters for configuring HttpConn.
org.apache.http.conn.routing The client-side route representation and tracking API, part of HttpConn.
org.apache.http.conn.ssl TLS/SSL specific parts of the HttpConn API.
org.apache.http.cookie The API for client-side state management via cookies, commonly referred to as HttpCookie.
org.apache.http.cookie.params Parameters for configuring HttpCookie.
org.apache.http.entity Representations for HTTP message entities.
org.apache.http.impl Default implementations for interfaces in org.apache.http.
org.apache.http.impl.conn.tsccm The implementation of a thread-safe client connection manager.
org.apache.http.impl.entity Default implementations for interfaces in org.apache.http.entity. Default implementations for interfaces in The transport layer abstraction of the HTTP components.
org.apache.http.message A selection of HTTP message implementations.
org.apache.http.params The parameterization framework for HTTP components.
org.apache.http.protocol HTTP protocol execution framework.
org.apache.http.util Mostly utility classes with static helper methods for various purposes.