Close httplib2 connections.
download(packageName, versionCode, downloadId, x__xgafv=None)
Downloads a single signed APK generated from an app bundle.
download_media(packageName, versionCode, downloadId, x__xgafv=None)
Downloads a single signed APK generated from an app bundle.
list(packageName, versionCode, x__xgafv=None)
Returns download metadata for all APKs that were generated from a given app bundle.
close()
Close httplib2 connections.
download(packageName, versionCode, downloadId, x__xgafv=None)
Downloads a single signed APK generated from an app bundle.
Args:
packageName: string, Package name of the app. (required)
versionCode: integer, Version code of the app bundle. (required)
downloadId: string, Download ID, which uniquely identifies the APK to download. Can be obtained from the response of `generatedapks.list` method. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
download_media(packageName, versionCode, downloadId, x__xgafv=None)
Downloads a single signed APK generated from an app bundle.
Args:
packageName: string, Package name of the app. (required)
versionCode: integer, Version code of the app bundle. (required)
downloadId: string, Download ID, which uniquely identifies the APK to download. Can be obtained from the response of `generatedapks.list` method. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
list(packageName, versionCode, x__xgafv=None)
Returns download metadata for all APKs that were generated from a given app bundle.
Args:
packageName: string, Package name of the app. (required)
versionCode: integer, Version code of the app bundle. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Response to list generated APKs.
"generatedApks": [ # All generated APKs, grouped by the APK signing key.
{ # Download metadata for split, standalone and universal APKs, as well as asset pack slices, signed with a given key.
"certificateSha256Hash": "A String", # SHA256 hash of the APK signing public key certificate.
"generatedAssetPackSlices": [ # List of asset pack slices which will be served for this app bundle, signed with a key corresponding to certificate_sha256_hash.
{ # Download metadata for an asset pack slice.
"downloadId": "A String", # Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` method.
"moduleName": "A String", # Name of the module that this asset slice belongs to.
"sliceId": "A String", # Asset slice ID.
"version": "A String", # Asset module version.
},
],
"generatedRecoveryModules": [ # Generated recovery apks for recovery actions signed with a key corresponding to certificate_sha256_hash. This includes all generated recovery APKs, also those in draft or cancelled state. This field is not set if no recovery actions were created for this signing key.
{ # Download metadata for an app recovery module.
"downloadId": "A String", # Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` method.
"moduleName": "A String", # Name of the module which recovery apk belongs to.
"recoveryId": "A String", # ID of the recovery action.
"recoveryStatus": "A String", # The status of the recovery action corresponding to the recovery apk.
},
],
"generatedSplitApks": [ # List of generated split APKs, signed with a key corresponding to certificate_sha256_hash.
{ # Download metadata for a split APK.
"downloadId": "A String", # Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` method.
"moduleName": "A String", # Name of the module that this APK belongs to.
"splitId": "A String", # Split ID. Empty for the main split of the base module.
"variantId": 42, # ID of the generated variant.
},
],
"generatedStandaloneApks": [ # List of generated standalone APKs, signed with a key corresponding to certificate_sha256_hash.
{ # Download metadata for a standalone APK.
"downloadId": "A String", # Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` method.
"variantId": 42, # ID of the generated variant.
},
],
"generatedUniversalApk": { # Download metadata for a universal APK. # Generated universal APK, signed with a key corresponding to certificate_sha256_hash. This field is not set if no universal APK was generated for this signing key.
"downloadId": "A String", # Download ID, which uniquely identifies the APK to download. Should be supplied to `generatedapks.download` method.
},
"targetingInfo": { # Targeting information about the generated apks. # Contains targeting information about the generated apks.
"assetSliceSet": [ # List of created asset slices.
{ # Set of asset slices belonging to a single asset module.
"apkDescription": [ # Asset slices.
{ # Description of the created apks.
"assetSliceMetadata": { # Holds data specific to Split APKs. # Set only for asset slices.
"isMasterSplit": True or False, # Indicates whether this APK is the main split of the module.
"splitId": "A String", # Id of the split.
},
"instantApkMetadata": { # Holds data specific to Split APKs. # Set only for Instant split APKs.
"isMasterSplit": True or False, # Indicates whether this APK is the main split of the module.
"splitId": "A String", # Id of the split.
},
"path": "A String", # Path of the Apk, will be in the following format: .apk where DownloadId is the ID used to download the apk using GeneratedApks.Download API.
"splitApkMetadata": { # Holds data specific to Split APKs. # Set only for Split APKs.
"isMasterSplit": True or False, # Indicates whether this APK is the main split of the module.
"splitId": "A String", # Id of the split.
},
"standaloneApkMetadata": { # Holds data specific to Standalone APKs. # Set only for standalone APKs.
"fusedModuleName": [ # Names of the modules fused in this standalone APK.
"A String",
],
},
"targeting": { # Represents a set of apk-level targetings. # Apk-level targeting.
"abiTargeting": { # Targeting based on Abi. # The abi that the apk targets
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
"value": [ # Value of an abi.
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
},
"languageTargeting": { # Targeting based on language. # The language that the apk targets
"alternatives": [ # Alternative languages.
"A String",
],
"value": [ # ISO-639: 2 or 3 letter language code.
"A String",
],
},
"multiAbiTargeting": { # Targeting based on multiple abis. # Multi-api-level targeting.
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents a list of ABIs.
"abi": [ # A list of targeted ABIs, as represented by the Android Platform
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
},
],
"value": [ # Value of a multi abi.
{ # Represents a list of ABIs.
"abi": [ # A list of targeted ABIs, as represented by the Android Platform
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
},
],
},
"screenDensityTargeting": { # Targeting based on screen density. # The screen density that this apk supports.
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents a screen density.
"densityAlias": "A String", # Alias for a screen density.
"densityDpi": 42, # Value for density dpi.
},
],
"value": [ # Value of a screen density.
{ # Represents a screen density.
"densityAlias": "A String", # Alias for a screen density.
"densityDpi": 42, # Value for density dpi.
},
],
},
"sdkVersionTargeting": { # Targeting based on sdk version. # The sdk version that the apk targets
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents an sdk version.
"min": 42, # Inclusive minimum value of an sdk version.
},
],
"value": [ # Value of an sdk version.
{ # Represents an sdk version.
"min": 42, # Inclusive minimum value of an sdk version.
},
],
},
"textureCompressionFormatTargeting": { # Targeting by a texture compression format. # Texture-compression-format-level targeting
"alternatives": [ # List of alternative TCFs (TCFs targeted by the sibling splits).
{ # Represents texture compression format.
"alias": "A String", # Alias for texture compression format.
},
],
"value": [ # The list of targeted TCFs. Should not be empty.
{ # Represents texture compression format.
"alias": "A String", # Alias for texture compression format.
},
],
},
},
},
],
"assetModuleMetadata": { # Metadata of an asset module. # Module level metadata.
"deliveryType": "A String", # Indicates the delivery type for persistent install.
"name": "A String", # Module name.
},
},
],
"packageName": "A String", # The package name of this app.
"variant": [ # List of the created variants.
{ # Variant is a group of APKs that covers a part of the device configuration space. APKs from multiple variants are never combined on one device.
"apkSet": [ # Set of APKs, one set per module.
{ # A set of apks representing a module.
"apkDescription": [ # Description of the generated apks.
{ # Description of the created apks.
"assetSliceMetadata": { # Holds data specific to Split APKs. # Set only for asset slices.
"isMasterSplit": True or False, # Indicates whether this APK is the main split of the module.
"splitId": "A String", # Id of the split.
},
"instantApkMetadata": { # Holds data specific to Split APKs. # Set only for Instant split APKs.
"isMasterSplit": True or False, # Indicates whether this APK is the main split of the module.
"splitId": "A String", # Id of the split.
},
"path": "A String", # Path of the Apk, will be in the following format: .apk where DownloadId is the ID used to download the apk using GeneratedApks.Download API.
"splitApkMetadata": { # Holds data specific to Split APKs. # Set only for Split APKs.
"isMasterSplit": True or False, # Indicates whether this APK is the main split of the module.
"splitId": "A String", # Id of the split.
},
"standaloneApkMetadata": { # Holds data specific to Standalone APKs. # Set only for standalone APKs.
"fusedModuleName": [ # Names of the modules fused in this standalone APK.
"A String",
],
},
"targeting": { # Represents a set of apk-level targetings. # Apk-level targeting.
"abiTargeting": { # Targeting based on Abi. # The abi that the apk targets
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
"value": [ # Value of an abi.
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
},
"languageTargeting": { # Targeting based on language. # The language that the apk targets
"alternatives": [ # Alternative languages.
"A String",
],
"value": [ # ISO-639: 2 or 3 letter language code.
"A String",
],
},
"multiAbiTargeting": { # Targeting based on multiple abis. # Multi-api-level targeting.
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents a list of ABIs.
"abi": [ # A list of targeted ABIs, as represented by the Android Platform
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
},
],
"value": [ # Value of a multi abi.
{ # Represents a list of ABIs.
"abi": [ # A list of targeted ABIs, as represented by the Android Platform
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
},
],
},
"screenDensityTargeting": { # Targeting based on screen density. # The screen density that this apk supports.
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents a screen density.
"densityAlias": "A String", # Alias for a screen density.
"densityDpi": 42, # Value for density dpi.
},
],
"value": [ # Value of a screen density.
{ # Represents a screen density.
"densityAlias": "A String", # Alias for a screen density.
"densityDpi": 42, # Value for density dpi.
},
],
},
"sdkVersionTargeting": { # Targeting based on sdk version. # The sdk version that the apk targets
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents an sdk version.
"min": 42, # Inclusive minimum value of an sdk version.
},
],
"value": [ # Value of an sdk version.
{ # Represents an sdk version.
"min": 42, # Inclusive minimum value of an sdk version.
},
],
},
"textureCompressionFormatTargeting": { # Targeting by a texture compression format. # Texture-compression-format-level targeting
"alternatives": [ # List of alternative TCFs (TCFs targeted by the sibling splits).
{ # Represents texture compression format.
"alias": "A String", # Alias for texture compression format.
},
],
"value": [ # The list of targeted TCFs. Should not be empty.
{ # Represents texture compression format.
"alias": "A String", # Alias for texture compression format.
},
],
},
},
},
],
"moduleMetadata": { # Metadata of a module. # Metadata about the module represented by this ApkSet
"deliveryType": "A String", # Indicates the delivery type (e.g. on-demand) of the module.
"dependencies": [ # Names of the modules that this module directly depends on. Each module implicitly depends on the base module.
"A String",
],
"moduleType": "A String", # Indicates the type of this feature module.
"name": "A String", # Module name.
"targeting": { # Targeting on the module level. # The targeting that makes a conditional module installed. Relevant only for Split APKs.
"deviceFeatureTargeting": [ # Targeting for device features.
{ # Targeting for a device feature.
"requiredFeature": { # Represents a device feature. # Feature of the device.
"featureName": "A String", # Name of the feature.
"featureVersion": 42, # The feature version specified by android:glEsVersion or android:version in in the AndroidManifest.
},
},
],
"sdkVersionTargeting": { # Targeting based on sdk version. # The sdk version that the variant targets
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents an sdk version.
"min": 42, # Inclusive minimum value of an sdk version.
},
],
"value": [ # Value of an sdk version.
{ # Represents an sdk version.
"min": 42, # Inclusive minimum value of an sdk version.
},
],
},
"userCountriesTargeting": { # Describes an inclusive/exclusive list of country codes that module targets. # Countries-level targeting
"countryCodes": [ # List of country codes in the two-letter CLDR territory format.
"A String",
],
"exclude": True or False, # Indicates if the list above is exclusive.
},
},
},
},
],
"targeting": { # Targeting on the level of variants. # Variant-level targeting.
"abiTargeting": { # Targeting based on Abi. # The abi that the variant targets
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
"value": [ # Value of an abi.
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
},
"multiAbiTargeting": { # Targeting based on multiple abis. # Multi-api-level targeting
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents a list of ABIs.
"abi": [ # A list of targeted ABIs, as represented by the Android Platform
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
},
],
"value": [ # Value of a multi abi.
{ # Represents a list of ABIs.
"abi": [ # A list of targeted ABIs, as represented by the Android Platform
{ # Represents an Abi.
"alias": "A String", # Alias for an abi.
},
],
},
],
},
"screenDensityTargeting": { # Targeting based on screen density. # The screen densities that this variant supports
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents a screen density.
"densityAlias": "A String", # Alias for a screen density.
"densityDpi": 42, # Value for density dpi.
},
],
"value": [ # Value of a screen density.
{ # Represents a screen density.
"densityAlias": "A String", # Alias for a screen density.
"densityDpi": 42, # Value for density dpi.
},
],
},
"sdkVersionTargeting": { # Targeting based on sdk version. # The sdk version that the variant targets
"alternatives": [ # Targeting of other sibling directories that were in the Bundle. For main splits this is targeting of other main splits.
{ # Represents an sdk version.
"min": 42, # Inclusive minimum value of an sdk version.
},
],
"value": [ # Value of an sdk version.
{ # Represents an sdk version.
"min": 42, # Inclusive minimum value of an sdk version.
},
],
},
"textureCompressionFormatTargeting": { # Targeting by a texture compression format. # Texture-compression-format-level targeting
"alternatives": [ # List of alternative TCFs (TCFs targeted by the sibling splits).
{ # Represents texture compression format.
"alias": "A String", # Alias for texture compression format.
},
],
"value": [ # The list of targeted TCFs. Should not be empty.
{ # Represents texture compression format.
"alias": "A String", # Alias for texture compression format.
},
],
},
},
"variantNumber": 42, # Number of the variant, starting at 0 (unless overridden). A device will receive APKs from the first variant that matches the device configuration, with higher variant numbers having priority over lower variant numbers.
},
],
},
},
],
}