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

generatedapks.download 中繼資料,適用於以指定金鑰簽署的分割、獨立和通用 APK,以及資產包切片。

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

string

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

generatedSplitApks[]

object (GeneratedSplitApk)

generatedapks:以對應 certificateSha256Hash 的金鑰簽署的分割 APK 清單。

generatedAssetPackSlices[]

object (GeneratedAssetPackSlice)

generatedapks:將為這個應用程式套件提供的資產包切片清單,並以對應於 certificateSha256Hash 的金鑰簽署。

generatedStandaloneApks[]

object (GeneratedStandaloneApk)

generatedapks:系統產生的獨立 APK 清單,以對應 certificateSha256Hash 的金鑰簽署。

generatedUniversalApk

object (GeneratedUniversalApk)

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

generatedRecoveryModules[]

object (GeneratedRecoveryApk)

為以對應於 certificateSha256Hash 的金鑰簽署的復原動作,產生復原 APK。包括所有產生的復原 APK,即使是草稿或已取消的 APK 也算在內。如果未針對這個簽署金鑰建立任何復原動作,系統就不會設定這個欄位。

unprotectedGeneratedSplitApks[]

object (GeneratedSplitApk)

generatedapks:系統產生的分割 APK 清單,未經過自動防護,並以對應於 certificateSha256Hash 的金鑰簽署。只有在應用程式使用自動保護功能時,才會顯示這個欄位。在本例中,generatedSplitApks 包含已啟用自動防護功能的 APK,而這個欄位包含未啟用自動防護功能的 APK。

unprotectedGeneratedStandaloneApks[]

object (GeneratedStandaloneApk)

generatedapks:系統產生的獨立 APK 清單,未經自動保護,並以對應於 certificateSha256Hash 的金鑰簽署。只有在應用程式使用自動保護功能時,才會顯示這個欄位。在本例中,generatedStandaloneApks 包含已啟用自動防護功能的 APK,而這個欄位包含未啟用自動防護功能的 APK。

targetingInfo

object (TargetingInfo)

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

GeneratedSplitApk

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

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

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

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

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

string

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

variantId

integer

產生的變體 ID。

GeneratedUniversalApk

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

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

復原 APK 所屬的模組名稱。

TargetingInfo

所產生 APK 的指定目標資訊。

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

string

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

variant[]

object (SplitApkVariant)

generatedapks.list,其中列出已建立的變體。

assetSliceSet[]

object (AssetSliceSet)

generatedapks.list of created asset slices.

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)

目標 ABI 清單,以 Android 平台表示

TextureCompressionFormatTargeting

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

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

object (TextureCompressionFormat)

指定目標的 TCF 清單。不得留空。

alternatives[]

object (TextureCompressionFormat)

generatedapks.list of alternative TCFs (TCFs targeted by the sibling splits)。

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

generatedapks.list of country codes in the two-letter CLDR territory format.

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)

指出持續安裝的放送類型。