Page Summary
-
A Variant represents an APK suitable for inclusion in a system image, containing a variant ID, device specification, and optional system APK options.
-
The DeviceSpec details the supported ABIs, locales, and screen density for a system APK.
-
SystemApkOptions provide boolean flags to configure properties like uncompressed native libraries, uncompressed dex files, and whether to use the rotated key for signing.
-
The methods available for system APK variants include creating, downloading, getting details of, and listing previously created variants.
-
Potential error codes include 5xx for server errors and 409 for concurrency update errors, both suggesting retrying the request.
Resource: Variant
APK that is suitable for inclusion in a system image. The resource of SystemApksService.
| JSON representation |
|---|
{ "variantId" : integer , "deviceSpec" : { object ( |
| Fields | |
|---|---|
variantId
|
Output only. The ID of a previously created system APK variant. |
deviceSpec
|
The device spec used to generate the APK. |
options
|
Optional. Options applied to the generated APK. |
DeviceSpec
The device spec used to generate a system APK.
| JSON representation |
|---|
{ "supportedAbis" : [ string ] , "supportedLocales" : [ string ] , "screenDensity" : integer } |
| Fields | |
|---|---|
supportedAbis[]
|
Supported ABI architectures in the order of preference. The values should be the string as reported by the platform, e.g. "armeabi-v7a", "x86_64". |
supportedLocales[]
|
All installed locales represented as BCP-47 strings, e.g. "en-US". |
screenDensity
|
Screen dpi. |
SystemApkOptions
Options for system APKs.
| JSON representation |
|---|
{ "uncompressedNativeLibraries" : boolean , "uncompressedDexFiles" : boolean , "rotated" : boolean } |
| Fields | |
|---|---|
uncompressedNativeLibraries
|
Whether system APK was generated with uncompressed native libraries. |
uncompressedDexFiles
|
Whether system APK was generated with uncompressed dex files. |
rotated
|
Whether to use the rotated key for signing the system APK. |
Methods |
|
|---|---|
|
Creates an APK which is suitable for inclusion in a system image from an already uploaded Android App Bundle. |
|
Downloads a previously created system APK which is suitable for inclusion in a system image. |
|
Returns a previously created system APK variant. |
|
Returns the list of previously created system APK variants. |
Error codes
The operations of this resource, return the following HTTP error codes:
| Error code | Reason | Description | Resolution |
|---|---|---|---|
400
|
invalidValue
|
An invalid value was provided in the request. This is often returned for a malformed or invalid purchase token. | Correct the invalid field value in the request body or parameters based on the API reference. |
400
|
required
|
A required field or parameter is missing from the request. | Consult the API documentation to ensure all mandatory fields and parameters are included. |
403
|
userInsufficientPermission
|
The user does not have sufficient permission to perform the requested operation. | Ensure the authenticated user has the necessary permissions in the Google Play Console. See Using a service account for more details. |
404
|
notFound
|
The requested resource could not be found. | Verify the identifiers (e.g., purchase token, package name, product ID, subscription ID) are correct. |
409
|
concurrentUpdate
|
There was an attempt to update an object that is being updated concurrently. | Retry the request with exponential backoff. Avoid simultaneous modifications to the same resource. |
5xx
|
Generic error
|
Generic error in the Google Play server. | Retry your request. If the problem persists contact your Google Play account manager or submit a support request. Consider checking the Play Status Dashboard for any known outages. |

