Method: generatedapks.list

傳回從指定應用程式套件產生的所有 APK 的下載中繼資料。

HTTP 要求

GET https://androidpublisher.googleapis.com/androidpublisher/v3/applications/{packageName}/generatedApks/{versionCode}

這個網址使用 gRPC 轉碼語法。

路徑參數

參數
packageName

string

應用程式的套件名稱。

versionCode

integer

應用程式套件的版本代碼。

要求主體

要求主體必須為空白。

回應主體

回應清單產生的 APK。

如果成功,回應主體會含有以下結構的資料:

JSON 表示法
{
  "generatedApks": [
    {
      object (GeneratedApksPerSigningKey)
    }
  ]
}
欄位
generatedApks[]

object (GeneratedApksPerSigningKey)

所有產生的 APK,按 APK 簽署金鑰分組。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/androidpublisher

GeneratedApksPerSigningKey

針對分割 APK、獨立 APK 和通用 APK,以及使用特定金鑰簽署的資產包切片,產生 apks.download 中繼資料。

JSON 表示法
{
  "certificateSha256Hash": string,
  "generatedSplitApks": [
    {
      object (GeneratedSplitApk)
    }
  ],
  "generatedAssetPackSlices": [
    {
      object (GeneratedAssetPackSlice)
    }
  ],
  "generatedStandaloneApks": [
    {
      object (GeneratedStandaloneApk)
    }
  ],
  "generatedUniversalApk": {
    object (GeneratedUniversalApk)
  },
  "generatedRecoveryModules": [
    {
      object (GeneratedRecoveryApk)
    }
  ],
  "targetingInfo": {
    object (TargetingInfo)
  }
}
欄位
certificateSha256Hash

string

APK 簽署公開金鑰憑證的 SHA256 雜湊。

generatedSplitApks[]

object (GeneratedSplitApk)

generatedapks.list 是系統產生的分割 APK 清單,使用與憑證 SHA-256 雜湊對應的金鑰簽署。

generatedAssetPackSlices[]

object (GeneratedAssetPackSlice)

系統會為這個應用程式套件提供的素材包切片清單,並使用與憑證 SHA256Hash 對應的金鑰進行簽署。

generatedStandaloneApks[]

object (GeneratedStandaloneApk)

generatedapks.list 是已產生獨立 APK 的清單,這些 APK 均使用與憑證 SHA256Hash 相對應的金鑰進行簽署。

generatedUniversalApk

object (GeneratedUniversalApk)

產生的通用 APK,使用與憑證 SHA256 雜湊相對應的金鑰簽署。如果這個簽署金鑰未產生通用 APK,則不會設定這個欄位。

generatedRecoveryModules[]

object (GeneratedRecoveryApk)

針對復原動作產生的復原 APK,使用與憑證 SHA256Hash 相對應的金鑰簽署。這包括所有產生的復原 APK,以及處於草稿或已取消狀態的 APK。如果未為這個簽署金鑰建立復原動作,這個欄位就不會設為已設定。

targetingInfo

object (TargetingInfo)

包含產生 APK 的指定目標資訊。

GeneratedSplitApk

分割 APK 的 generatedapks.download 中繼資料。

JSON 表示法
{
  "downloadId": string,
  "variantId": integer,
  "moduleName": string,
  "splitId": string
}
欄位
downloadId

string

generatedapks.download ID,用於唯一識別要下載的 APK。應提供給 generatedapks.download 方法。

variantId

integer

產生的子類 ID。

moduleName

string

這個 APK 所屬模組的名稱。

splitId

string

拆分 ID。空白,表示基礎模組的主要分割區域。

GeneratedAssetPackSlice

資產包切片產生的 apks.download 中繼資料。

JSON 表示法
{
  "downloadId": string,
  "moduleName": string,
  "sliceId": string,
  "version": string
}
欄位
downloadId

string

generatedapks.download ID,用於唯一識別要下載的 APK。應提供給 generatedapks.download 方法。

moduleName

string

此素材資源切片所屬的模組名稱。

sliceId

string

素材資源切片 ID。

version

string (int64 format)

素材資源模組版本。

GeneratedStandaloneApk

獨立 APK 的 generatedapks.download 中繼資料。

JSON 表示法
{
  "downloadId": string,
  "variantId": integer
}
欄位
downloadId

string

generatedapks.download ID,用於唯一識別要下載的 APK。應提供給 generatedapks.download 方法。

variantId

integer

產生的子類 ID。

GeneratedUniversalApk

通用 APK 的 generatedapks.download 中繼資料。

JSON 表示法
{
  "downloadId": string
}
欄位
downloadId

string

generatedapks.download ID,用於唯一識別要下載的 APK。應提供給 generatedapks.download 方法。

GeneratedRecoveryApk

應用程式復原模組的 generatedapks.download 中繼資料。

JSON 表示法
{
  "downloadId": string,
  "recoveryId": string,
  "recoveryStatus": enum (RecoveryStatus),
  "moduleName": string
}
欄位
downloadId

string

generatedapks.download ID,用於唯一識別要下載的 APK。應提供給 generatedapks.download 方法。

recoveryId

string (int64 format)

復原動作的 ID。

recoveryStatus

enum (RecoveryStatus)

對應至復原 APK 的復原動作狀態。

moduleName

string

recovery apk 所屬模組的名稱。

TargetingInfo

產生 APK 的指定目標資訊。

JSON 表示法
{
  "packageName": string,
  "variant": [
    {
      object (SplitApkVariant)
    }
  ],
  "assetSliceSet": [
    {
      object (AssetSliceSet)
    }
  ]
}
欄位
packageName

string

此應用程式的套件名稱。

variant[]

object (SplitApkVariant)

已產生的變化版本的 generatedapks.list。

assetSliceSet[]

object (AssetSliceSet)

產生的資產切片清單。

SplitApkVariant

變化版本是一組涵蓋部分裝置設定空間的 APK。系統不會在單一裝置上合併多個變化版本的 APK。

JSON 表示法
{
  "targeting": {
    object (VariantTargeting)
  },
  "apkSet": [
    {
      object (ApkSet)
    }
  ],
  "variantNumber": integer
}
欄位
targeting

object (VariantTargeting)

變化版本層級指定目標。

apkSet[]

object (ApkSet)

一組 APK,每個模組一組。

variantNumber

integer

變化版本的編號,從 0 開始 (除非已覆寫)。裝置會從與裝置設定相符的第一個變數接收 APK,且變數編號越高,優先順序就越高。

VariantTargeting

指定子類層級。

JSON 表示法
{
  "sdkVersionTargeting": {
    object (SdkVersionTargeting)
  },
  "abiTargeting": {
    object (AbiTargeting)
  },
  "screenDensityTargeting": {
    object (ScreenDensityTargeting)
  },
  "multiAbiTargeting": {
    object (MultiAbiTargeting)
  },
  "textureCompressionFormatTargeting": {
    object (TextureCompressionFormatTargeting)
  }
}
欄位
sdkVersionTargeting

object (SdkVersionTargeting)

變化版本指定的 SDK 版本

abiTargeting

object (AbiTargeting)

變化版本指定的 ABI

screenDensityTargeting

object (ScreenDensityTargeting)

這個變化版本支援的螢幕密度

multiAbiTargeting

object (MultiAbiTargeting)

多個 API 層級指定目標

textureCompressionFormatTargeting

object (TextureCompressionFormatTargeting)

紋理壓縮格式層級指定目標

SdkVersionTargeting

根據 SDK 版本指定目標。

JSON 表示法
{
  "value": [
    {
      object (SdkVersion)
    }
  ],
  "alternatives": [
    {
      object (SdkVersion)
    }
  ]
}
欄位
value[]

object (SdkVersion)

SDK 版本的值。

alternatives[]

object (SdkVersion)

指定套件中其他同層目錄。對於主要區隔,這表示指定其他主要區隔。

SdkVersion

代表 SDK 版本。

JSON 表示法
{
  "min": integer
}
欄位
min

integer

SDK 版本的最低值 (包含此值)。

AbiTargeting

根據 Abi 指定目標。

JSON 表示法
{
  "value": [
    {
      object (Abi)
    }
  ],
  "alternatives": [
    {
      object (Abi)
    }
  ]
}
欄位
value[]

object (Abi)

abi 的值。

alternatives[]

object (Abi)

指定套件中其他同層目錄。對於主要區隔,這表示指定其他主要區隔。

Abi

代表 Abi。

JSON 表示法
{
  "alias": enum (AbiAlias)
}
欄位
alias

enum (AbiAlias)

ABI 的別名。

AbiAlias

ABI 的別名定義。

列舉
UNSPECIFIED_CPU_ARCHITECTURE 未指定的 ABI。
ARMEABI ARMEABI ABI。
ARMEABI_V7A ARMEABI_V7A ABI。
ARM64_V8A ARM64_V8A ABI。
X86 X86 ABI。
X86_64 X86_64 ABI。
RISCV64 RISCV64 abi。

ScreenDensityTargeting

根據螢幕密度指定目標。

JSON 表示法
{
  "value": [
    {
      object (ScreenDensity)
    }
  ],
  "alternatives": [
    {
      object (ScreenDensity)
    }
  ]
}
欄位
value[]

object (ScreenDensity)

螢幕密度的值。

alternatives[]

object (ScreenDensity)

指定套件中其他同層目錄。對於主要區隔,這表示指定其他主要區隔。

ScreenDensity

代表螢幕密度。

JSON 表示法
{

  // Union field density_oneof can be only one of the following:
  "densityAlias": enum (DensityAlias),
  "densityDpi": integer
  // End of list of possible types for union field density_oneof.
}
欄位

聯集欄位 density_oneof

density_oneof 只能是下列其中一項:

densityAlias

enum (DensityAlias)

螢幕密度的別名。

densityDpi

integer

密度 dpi 的值。

DensityAlias

螢幕密度的別名定義。

列舉
DENSITY_UNSPECIFIED 未指定螢幕密度。
NODPI NODPI 螢幕密度。
LDPI LDPI 螢幕密度。
MDPI MDPI 螢幕密度。
TVDPI TVDPI 螢幕密度。
HDPI HDPI 螢幕密度。
XHDPI XHDPI 螢幕密度。
XXHDPI XXHDPI 螢幕密度。
XXXHDPI XXXHDPI 螢幕密度。

MultiAbiTargeting

根據多個 ABI 指定目標。

JSON 表示法
{
  "value": [
    {
      object (MultiAbi)
    }
  ],
  "alternatives": [
    {
      object (MultiAbi)
    }
  ]
}
欄位
value[]

object (MultiAbi)

多重 ABI 的值。

alternatives[]

object (MultiAbi)

指定套件中其他同層目錄。對於主要區隔,這表示指定其他主要區隔。

MultiAbi

代表 ABI 清單。

JSON 表示法
{
  "abi": [
    {
      object (Abi)
    }
  ]
}
欄位
abi[]

object (Abi)

由 Android 平台代表的目標 ABI 清單

TextureCompressionFormatTargeting

依紋理壓縮格式指定目標。

JSON 表示法
{
  "value": [
    {
      object (TextureCompressionFormat)
    }
  ],
  "alternatives": [
    {
      object (TextureCompressionFormat)
    }
  ]
}
欄位
value[]

object (TextureCompressionFormat)

指定的資訊公開和同意聲明架構清單。不得留空。

alternatives[]

object (TextureCompressionFormat)

產生的替代資訊公開和同意聲明架構清單 (由同層分割項目指定的資訊公開和同意聲明架構)。

TextureCompressionFormat

代表紋理壓縮格式。

JSON 表示法
{
  "alias": enum (TextureCompressionFormatAlias)
}
欄位
alias

enum (TextureCompressionFormatAlias)

紋理壓縮格式的別名。

TextureCompressionFormatAlias

紋理壓縮格式的別名定義。

列舉
UNSPECIFIED_TEXTURE_COMPRESSION_FORMAT 未指定格式。
ETC1_RGB8 ETC1_RGB8 格式。
PALETTED PALETTED 格式。
THREE_DC THREE_DC 格式。
ATC ATC 格式。
LATC LATC 格式。
DXT1 DXT1 格式。
S3TC S3TC 格式。
PVRTC PVRTC 格式。
ASTC ASTC 格式。
ETC2 ETC2 格式。

ApkSet

代表模組的一組 APK。

JSON 表示法
{
  "moduleMetadata": {
    object (ModuleMetadata)
  },
  "apkDescription": [
    {
      object (ApkDescription)
    }
  ]
}
欄位
moduleMetadata

object (ModuleMetadata)

這個 ApkSet 所代表模組的中繼資料

apkDescription[]

object (ApkDescription)

產生的 APK 說明。

ModuleMetadata

模組的中繼資料。

JSON 表示法
{
  "name": string,
  "moduleType": enum (FeatureModuleType),
  "deliveryType": enum (DeliveryType),
  "dependencies": [
    string
  ],
  "targeting": {
    object (ModuleTargeting)
  }
}
欄位
name

string

模組名稱。

moduleType

enum (FeatureModuleType)

指出此功能模組的類型。

deliveryType

enum (DeliveryType)

指示模組的放送類型 (例如按需)。

dependencies[]

string

這個模組直接依附的模組名稱。每個模組都會隱含地依附於基礎模組。

targeting

object (ModuleTargeting)

指定條件模組安裝方式。僅適用於分割 APK。

FeatureModuleType

功能模組的類型。

列舉
UNKNOWN_MODULE_TYPE 不明的功能模組。
FEATURE_MODULE 一般功能模組。

DeliveryType

指示模組的放送類型。

列舉
UNKNOWN_DELIVERY_TYPE 未指定的提交類型。
INSTALL_TIME 這個模組一律會在應用程式初次安裝時下載。
ON_DEMAND 這個模組是按需要求的,也就是說,它不會是初始安裝的一部分,只有在用戶端要求時才會傳送。
FAST_FOLLOW 這個模組會在初始安裝作業完成後立即下載。應用程式可在下載這些模組前開啟。

ModuleTargeting

模組層級指定目標。

JSON 表示法
{
  "sdkVersionTargeting": {
    object (SdkVersionTargeting)
  },
  "deviceFeatureTargeting": [
    {
      object (DeviceFeatureTargeting)
    }
  ],
  "userCountriesTargeting": {
    object (UserCountriesTargeting)
  }
}
欄位
sdkVersionTargeting

object (SdkVersionTargeting)

變化版本指定的 SDK 版本

deviceFeatureTargeting[]

object (DeviceFeatureTargeting)

指定裝置功能。

userCountriesTargeting

object (UserCountriesTargeting)

國家/地區層級指定目標

DeviceFeatureTargeting

指定裝置功能。

JSON 表示法
{
  "requiredFeature": {
    object (DeviceFeature)
  }
}
欄位
requiredFeature

object (DeviceFeature)

裝置功能。

DeviceFeature

代表裝置功能。

JSON 表示法
{
  "featureName": string,
  "featureVersion": integer
}
欄位
featureName

string

功能名稱。

featureVersion

integer

在 AndroidManifest.xml 中,由 android:glEsVersion 或 android:version 指定的功能版本。

UserCountriesTargeting

說明模組指定的國家/地區代碼 (包含/排除) 清單。

JSON 表示法
{
  "countryCodes": [
    string
  ],
  "exclude": boolean
}
欄位
countryCodes[]

string

以兩個字母 CLDR 地域代碼格式產生 apks.list 國家/地區代碼。

exclude

boolean

指出上述清單是否為排他性清單。

ApkDescription

已建立 APK 的說明。

JSON 表示法
{
  "targeting": {
    object (ApkTargeting)
  },
  "path": string,

  // Union field apk_metadata_oneof_value can be only one of the following:
  "splitApkMetadata": {
    object (SplitApkMetadata)
  },
  "standaloneApkMetadata": {
    object (StandaloneApkMetadata)
  },
  "instantApkMetadata": {
    object (SplitApkMetadata)
  },
  "assetSliceMetadata": {
    object (SplitApkMetadata)
  }
  // End of list of possible types for union field apk_metadata_oneof_value.
}
欄位
targeting

object (ApkTargeting)

APK 層級指定目標。

path

string

APK 路徑的格式如下:.apk,其中 DownloadId 是使用 GeneratedApks.Download API 下載 APK 時使用的 ID。

聯集欄位 apk_metadata_oneof_value

apk_metadata_oneof_value 只能是下列其中一項:

splitApkMetadata

object (SplitApkMetadata)

僅適用於分割 APK。

standaloneApkMetadata

object (StandaloneApkMetadata)

僅適用於獨立 APK。

instantApkMetadata

object (SplitApkMetadata)

僅適用於免安裝分割 APK。

assetSliceMetadata

object (SplitApkMetadata)

僅適用於素材資源切片。

ApkTargeting

代表一組 APK 層級指定目標。

JSON 表示法
{
  "abiTargeting": {
    object (AbiTargeting)
  },
  "languageTargeting": {
    object (LanguageTargeting)
  },
  "screenDensityTargeting": {
    object (ScreenDensityTargeting)
  },
  "sdkVersionTargeting": {
    object (SdkVersionTargeting)
  },
  "textureCompressionFormatTargeting": {
    object (TextureCompressionFormatTargeting)
  },
  "multiAbiTargeting": {
    object (MultiAbiTargeting)
  }
}
欄位
abiTargeting

object (AbiTargeting)

APK 鎖定的 ABI

languageTargeting

object (LanguageTargeting)

APK 指定的語言

screenDensityTargeting

object (ScreenDensityTargeting)

這個 APK 支援的螢幕密度。

sdkVersionTargeting

object (SdkVersionTargeting)

APK 指定的 SDK 版本

textureCompressionFormatTargeting

object (TextureCompressionFormatTargeting)

紋理壓縮格式層級指定目標

multiAbiTargeting

object (MultiAbiTargeting)

多個 API 層級指定目標。

LanguageTargeting

根據語言指定目標。

JSON 表示法
{
  "value": [
    string
  ],
  "alternatives": [
    string
  ]
}
欄位
value[]

string

ISO-639:2 或 3 個字母的語言代碼。

alternatives[]

string

替代語言。

SplitApkMetadata

保存分割 APK 專屬資料。

JSON 表示法
{
  "splitId": string,
  "isMasterSplit": boolean
}
欄位
splitId

string

分割的 ID。

isMasterSplit

boolean

指出此 APK 是否為模組的主要分割區域。

StandaloneApkMetadata

保存獨立 APK 專屬資料。

JSON 表示法
{
  "fusedModuleName": [
    string
  ]
}
欄位
fusedModuleName[]

string

這個獨立 APK 中融合的模組名稱。

AssetSliceSet

屬於單一素材資源模組的素材資源切片組合。

JSON 表示法
{
  "assetModuleMetadata": {
    object (AssetModuleMetadata)
  },
  "apkDescription": [
    {
      object (ApkDescription)
    }
  ]
}
欄位
assetModuleMetadata

object (AssetModuleMetadata)

模組層級中繼資料。

apkDescription[]

object (ApkDescription)

素材資源切片。

AssetModuleMetadata

資產模組的中繼資料。

JSON 表示法
{
  "name": string,
  "deliveryType": enum (DeliveryType)
}
欄位
name

string

模組名稱。

deliveryType

enum (DeliveryType)

表示持續性安裝的放送類型。