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 的 generateapks.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)

產生的分割 APK 的 generateapks.list,使用與 certificateSha256Hash 相對應的金鑰簽署。

generatedAssetPackSlices[]

object (GeneratedAssetPackSlice)

generateapks.list (資產包 Slice) 將為這個應用程式套件提供,並使用與 certificateSha256Hash 相對應的金鑰簽署。

generatedStandaloneApks[]

object (GeneratedStandaloneApk)

產生的獨立 APK 的 generateapks.list,使用與 certificateSha256Hash 相對應的金鑰簽署。

generatedUniversalApk

object (GeneratedUniversalApk)

產生的通用 APK,使用與 certificateSha256Hash 相對應的金鑰簽署。如果未針對這個簽署金鑰產生通用 APK,系統就不會設定這個欄位。

generatedRecoveryModules[]

object (GeneratedRecoveryApk)

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

targetingInfo

object (TargetingInfo)

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

GeneratedSplitApk

針對分割 APK 的 generateapks.download 中繼資料。

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

string

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

variantId

integer

所產生變化版本的 ID。

moduleName

string

這個 APK 所屬的模組名稱。

splitId

string

分割 ID。基本模組的主要分割為空白。

GeneratedAssetPackSlice

資產包配量的 generateapks.download 中繼資料。

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

string

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

moduleName

string

這個資產片段所屬的模組名稱。

sliceId

string

資產片段 ID。

version

string (int64 format)

素材資源模組版本。

GeneratedStandaloneApk

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

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

string

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

variantId

integer

所產生變化版本的 ID。

GeneratedUniversalApk

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

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

string

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

GeneratedRecoveryApk

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

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

string

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

recoveryId

string (int64 format)

復原動作的 ID。

recoveryStatus

enum (RecoveryStatus)

與復原 APK 相對應的復原動作狀態。

moduleName

string

復原 APK 所屬的模組名稱。

TargetingInfo

所產生 APK 的指定資訊。

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

string

這個應用程式的套件名稱。

variant[]

object (SplitApkVariant)

所建立變化版本的 generateapks.list。

assetSliceSet[]

object (AssetSliceSet)

已建立的資產 Slice 的 generateapks.list。

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。

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

enum (AbiAlias)

abi 的別名。

AbiAlias

Abis 的別名定義。

列舉
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)

指定 ABI 的清單,以 Android 平台表示

TextureCompressionFormatTargeting

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

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

object (TextureCompressionFormat)

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

alternatives[]

object (TextureCompressionFormat)

其他 TCF 的 generateapks.list (同層級分割指定的 TCF)。

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 中 android:glEsVersion 或 android:version 指定的功能版本。

UserCountriesTargeting

說明模組目標的國家/地區代碼清單 (包含在內)。

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

string

generateapks.list,由 CLDR 地域格式列出國家/地區代碼。

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,下載 ID 是利用 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)

指出永久安裝的傳送類型。