The Android Management SDK (AMAPI SDK) release process may include a release
candidate stage as part of the standard release process.

> [!IMPORTANT]
> **Key Point:** A release candidate is a prospective release implementing the final API surface.

## Latest Update

|   | Stable Release | Release Candidate |
|---|---|---|
| October 28, 2026 | [1.9.0](https://developers.google.com/android/management/sdk-release-notes#version-1.9.0) |   |

## Declare dependencies

To add a dependency on AMAPI SDK, you must add the [Google Maven repository](https://developer.android.com/build/remote-repositories#google-maven) to your project:

```groovy
repositories {
  ...
  google()
}
```

Add the dependencies for the artifacts you need in the `build.gradle` file for
your app or module:

```groovy
dependencies {
    def amapi_version = "1.9.0"

    implementation "com.google.android.libraries.enterprise.amapi:amapi:$amapi_version"
}
```

For more information about dependencies, see [Add build dependencies](https://developer.android.com/build/dependencies).

> [!IMPORTANT]
> **Key Point:** Always use the latest available stable version of the library to benefit from the available bug fixes and improvements.

## Version 1.9.0

*October 28, 2026*

This version includes the following updates:

- Added the [`PolicyClient`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/policy/PolicyClient) interface and [`Policy.UnifiedUpdatePolicy`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/policy/model/Policy.UnifiedUpdatePolicy) to allow custom Device Policy Controllers (DPCs) to configure, retrieve, and clear [Unified Update Controls (UUC)](https://developers.google.com/android/management/unified-update-controls) policies on company-owned devices through the Android Device Policy (ADP) app. See [Configure Unified Update Controls with the AMAPI SDK](https://developers.google.com/android/management/unified-update-controls-sdk).
- Introduced the local `Wipe` command ([`IssueCommandRequest.Wipe`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/commands/model/IssueCommandRequest.Wipe)) and the `LOCAL_DEVICE_WIPE_COMMAND_ALLOWED` extra capability ([`Role.ExtraCapabilities`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/common/model/Role.ExtraCapabilities)), allowing companion apps assigned the [`COMPANION_APP`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/common/model/Role.RoleType#COMPANION_APP) role to locally wipe a company-owned device or a work profile on a personally-owned device. See [Extension apps and local commands](https://developers.google.com/android/management/sdk-local-commands) and [Manage application roles](https://developers.google.com/android/management/app-roles).
- Fixed an issue where communication with the Android Device Policy app could fail with a `PERMISSION_DENIED` error (for example, immediately after device enrollment or a Google Play services update) until the device or client app restarted.
- Clarified exception and override documentation for [`OemSystemUpdateClient`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/oemsystemupdate/OemSystemUpdateClient) and [`OemSystemUpdateHandler`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/oemsystemupdate/OemSystemUpdateHandler).

## Version 1.8.4

*September 10, 2026*

This version includes the following updates:

- Updated SDK transitive dependencies to be compatible with Kotlin 2.4.0.
  This fixes a crash occurring during the application role notification,
  affecting v1.8.2 and v1.8.3, when the integrating app does not specify
  `kotlinx-coroutines-core` 1.11.0 or later.

- Clarified the documentation for [`Instruction.InstructionType#FORCE`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/oemsystemupdate/model/Instruction.InstructionType#FORCE).

## Version 1.8.3

*August 12, 2026*

This version includes the following updates:

- Fixed an issue where the SDK could return a stale 'installed but not ready' state when using the [`DEVICE_POLICY_CONTROLLER`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/common/model/Role.RoleType#DEVICE_POLICY_CONTROLLER) role if the client process restarted after a successful environment preparation.
- The minimum supported Android API level is now 24 (up from 23).

## Version 1.8.2

*July 15, 2026*

This version includes the following updates:

- Fixed an issue where calling [`prepareEnvironment`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/environment/EnvironmentClient#prepareEnvironment(com.google.android.managementapi.environment.model.PrepareEnvironmentRequest,android.content.ComponentName)) could fail to update the Google Play Store to the required version, causing Android Device Policy installation to fail.

## Version 1.8.1

*June 02, 2026*

This version includes the following updates:

- Improved reliability and error reporting during the Android Device Policy app installation process.
- Enhanced the environment preparation flow to improve compatibility and reliability during Google Play Store updates.

## Version 1.8.0

*April 15, 2026*

This version introduces support for OEM partners, allowing OEM's Over-the-Air
(OTA) clients to bidirectionally communicate with the Android Device Policy
(ADP) app regarding system updates.

This version includes the following updates:

- Add the [`OemSystemUpdateClient`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/oemsystemupdate/OemSystemUpdateClient) interface, which allows OEM OTA clients to inform ADP about updates and query for instructions. The interface includes methods to:
  - Create, get, and list system updates (e.g., `createSystemUpdate`, `getSystemUpdate`, `listSystemUpdates`).
  - Report various stages of the update process (e.g., `reportSystemUpdateDownloading`, `reportSystemUpdateDownloaded`, `reportSystemUpdateApplied`, `reportSystemUpdateAborted`).
  - Report actions taken when overriding AMAPI instructions or when prevented from adhering to them (e.g., `reportSystemUpdateDownloadingWithOverride`, `reportSystemUpdateDownloadPrevented`).
  - Manage and query the update control state (e.g., `updateUpdateControlState`, `getUpdateControlState`).
- Add the [`OemSystemUpdateHandler`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/oemsystemupdate/OemSystemUpdateHandler) interface, which OEM OTA clients must implement to receive callbacks from ADP. This includes:
  - `onSystemUpdatesChanged`: Notifies the OEM client of changes to update instructions.
  - `listPendingSystemUpdates`: Called by ADP to request the list of pending updates.
  - `getUpdateControlState`: Called by ADP to retrieve the OEM client's current update control state.

> [!NOTE]
> **Note:** ADP won't fulfill requests from OEM partners at this time, as the related platform functionality is expected to be released with Android 17. However, partners can start integrating with it now, as no changes will be needed once the feature is fully supported.

## Version 1.7.1

*January 19, 2026*

This version includes the following updates:

- Fixed a bug that prevented applications from calling [`prepareEnvironment`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/environment/EnvironmentClient#prepareEnvironment(com.google.android.managementapi.environment.model.PrepareEnvironmentRequest,android.content.ComponentName)) on Android 8 or lower when using the [`DEVICE_POLICY_CONTROLLER`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/common/model/Role.RoleType#DEVICE_POLICY_CONTROLLER) role. Other roles still require Android 10 or higher.
- Improved logging for better diagnostics. We recommend that partners adopt this version.

## Version 1.7.0

*November 03, 2025*

This version includes the following updates:

- Add to the available device trust signals the [`ManagementProviderInfo`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/device/model/ManagementProviderInfo), which contains a human-readable business name of the management provider.
- Introduce the `REQUEST_DEVICE_INFO` command to allow DPC apps to read the device EID. Call [`IssueCommandRequest`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/commands/model/IssueCommandRequest) with a `RequestDeviceInfo` type and specify `DeviceInfo.EID` as the device identifier being requested.
- Update dependencies to fix [CVE-2023-2976](https://nvd.nist.gov/vuln/detail/CVE-2023-2976).

## Version 1.7.0-rc01

*September 29, 2025*

This version includes the following updates:

- Add to the available device trust signals the [`ManagementProviderInfo`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/device/model/ManagementProviderInfo), which contains a human-readable business name of the management provider.
- Introduce the `REQUEST_DEVICE_INFO` command to allow DPC apps to read the device EID. Call [`IssueCommandRequest`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/commands/model/IssueCommandRequest) with a `RequestDeviceInfo` type and specify `DeviceInfo.EID` as the device identifier being requested.

## Version 1.6.0

*September 11, 2025*

This version includes the following updates:

- Introduce the possibility for EMMs using the Android Management API to install custom applications. See [Manage custom apps with AMAPI](https://developers.google.com/android/management/manage-custom-apps).
- Introduce a new system to assign roles to applications. See [Manage application roles](https://developers.google.com/android/management/app-roles).
- Increase `minSDK` to API Level 23.

## Version 1.6.0-rc01

*August 28, 2025*

This version includes the following updates:

- Introduce the possibility for EMMs using the Android Management API to install custom applications. See [Manage custom apps with AMAPI](https://developers.google.com/android/management/manage-custom-apps).
- Increase `minSDK` to API Level 23.

## Version 1.5.0

*August 11, 2025*

This version includes the following updates:

- Improved device enrollment flow for custom Device Policy Controllers (DPC). This streamlined approach uses the AMAPI SDK and the Android Device Policy (ADP) app to simplify device enrollment.
- Stability and performance improvements with additional information available in device trust exceptions; See [`AmapiSdkException`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/common/exceptions/AmapiSdkException).

## Version 1.5.0-rc01

*July 24, 2025*

This version introduces an improved device enrollment flow for custom Device
Policy Controllers (DPC). This streamlined approach uses the AMAPI SDK and the
Android Device Policy (ADP) app to simplify device enrollment.

## Version 1.4.0

*June 18, 2025*

This version includes the [`Device.WorkProfileState`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/device/model/Device.WorkProfileState) signal to identify the
device [management state](https://developers.google.com/android/management/device-trust-signals#management-state).

There are no differences with [v1.4.0-rc01](https://developers.google.com/android/management/sdk-release-notes#version-1.4.0-rc01).

> [!IMPORTANT]
> **Important:** Access to the device trust signals is restricted using an allowlist to prevent unauthorized usage. For additional information see: [**Device Trust from Android Enterprise - API access**](https://developers.google.com/android/management/device-trust-register).

## Version 1.4.0-rc01

*June 02, 2025*

This version includes the [`Device.WorkProfileState`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/device/model/Device.WorkProfileState) signal to identify the
device [management state](https://developers.google.com/android/management/device-trust-signals#management-state).

## Version 1.3.0

*Apr 14, 2025*

This version includes the first release of
[Device Trust from Android Enterprise](https://developers.google.com/android/management/device-trust-api).

There are no differences with [v1.3.0-rc01](https://developers.google.com/android/management/sdk-release-notes#version-1.3.0-rc01).

> [!IMPORTANT]
> **Important:** Access to the device trust signals is restricted using an allowlist to prevent unauthorized usage. For additional information see: [**Device Trust from Android Enterprise - API access**](https://developers.google.com/android/management/device-trust-register).

## Version 1.3.0-rc01

*Feb 18, 2025*

This version includes the first release candidate for Device Trust from Android
Enterprise.

- New device trust signal package [`com.google.android.managementapi.device`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/device/package-summary)
- New Environment package [`com.google.android.managementapi.environment`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/environment/package-summary) to set up the device for Device Trust from Android Enterprise and, if necessary, to install or update the Android Device Policy app.

## Version 1.1.5

*May 13, 2024*

This version includes the following updates:

- Bug fixes and internal improvements.

## Version 1.1.4

*January 24, 2024*

This version includes the following updates:

- New DPC Migration package [`com.google.android.managementapi.dpcmigration`](https://developers.google.com/android/management/reference/amapi/com/google/android/managementapi/dpcmigration/package-summary) to support device migration to AMAPI. For additional information you can review the guide [*Migrate existing devices to AMAPI*](https://developers.google.com/android/management/dpc-migration).

## Version 1.0.1

*February 15, 2022*

This version includes the following updates:

- Bug fixes and internal improvements.

## Version 1.0.0

*September 20, 2021*

This version includes the following updates:

- Initial release.