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)

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

generatedUniversalApk

object (GeneratedUniversalApk)

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

generatedRecoveryModules[]

object (GeneratedRecoveryApk)

為使用與 certificateSha256Hash 相對應的金鑰簽署的復原動作所產生的復原 APK。這包括所有產生的復原 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

資產包配量的 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 的 generatedapks.download 中繼資料。

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

string

generatedapks.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

代表 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)

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

TextureCompressionFormatTargeting

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

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

object (TextureCompressionFormat)

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

alternatives[]

object (TextureCompressionFormat)

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

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

以兩個字母 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,下載 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)

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