MCP Tools Reference: Android Device Management MCP Server

工具:list_devices

列出指定企業的裝置。父項欄位必須包含企業 ID (例如:enterprises/{enterpriseId})。

以下範例示範如何使用 curl 叫用 list_devices MCP 工具。

Curl 要求
                  
curl --location 'https://androidmanagement.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "list_devices",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

輸入內容的結構定義

要求列出特定企業的裝置。

ListDevicesRequest

JSON 表示法
{
  "parent": string,
  "pageSize": integer,
  "pageToken": string
}
欄位
parent

string

企業名稱,格式為 enterprises/{enterpriseId}

pageSize

integer

要求的頁面大小。如未指定,最多將傳回 10 部裝置。許可的最大值為 100;超出的數值將一律指定為 100。這些限制可能會隨時變動。

pageToken

string

這個符記可識別伺服器傳回的結果頁面。

輸出內容的結構定義

回應列出特定企業裝置的要求。

ListDevicesResponse

JSON 表示法
{
  "devices": [
    {
      object (Device)
    }
  ],
  "nextPageToken": string
}
欄位
devices[]

object (Device)

裝置清單。

nextPageToken

string

如有更多結果,則為用來擷取下一頁結果的符記。

裝置

JSON 表示法
{
  "name": string,
  "userName": string,
  "managementMode": enum (ManagementMode),
  "state": enum (DeviceState),
  "appliedState": enum (DeviceState),
  "policyCompliant": boolean,
  "nonComplianceDetails": [
    {
      object (NonComplianceDetail)
    }
  ],
  "enrollmentTime": string,
  "lastStatusReportTime": string,
  "lastPolicyComplianceReportTime": string,
  "lastPolicySyncTime": string,
  "policyName": string,
  "appliedPolicyName": string,
  "appliedPolicyVersion": string,
  "apiLevel": integer,
  "enrollmentTokenData": string,
  "enrollmentTokenName": string,
  "disabledReason": {
    object (UserFacingMessage)
  },
  "softwareInfo": {
    object (SoftwareInfo)
  },
  "hardwareInfo": {
    object (HardwareInfo)
  },
  "displays": [
    {
      object (Display)
    }
  ],
  "applicationReports": [
    {
      object (ApplicationReport)
    }
  ],
  "previousDeviceNames": [
    string
  ],
  "networkInfo": {
    object (NetworkInfo)
  },
  "memoryInfo": {
    object (MemoryInfo)
  },
  "memoryEvents": [
    {
      object (MemoryEvent)
    }
  ],
  "powerManagementEvents": [
    {
      object (PowerManagementEvent)
    }
  ],
  "hardwareStatusSamples": [
    {
      object (HardwareStatus)
    }
  ],
  "deviceSettings": {
    object (DeviceSettings)
  },
  "user": {
    object (User)
  },
  "systemProperties": {
    string: string,
    ...
  },
  "securityPosture": {
    object (SecurityPosture)
  },
  "ownership": enum (Ownership),
  "commonCriteriaModeInfo": {
    object (CommonCriteriaModeInfo)
  },
  "appliedPasswordPolicies": [
    {
      object (PasswordRequirements)
    }
  ],
  "dpcMigrationInfo": {
    object (DpcMigrationInfo)
  },
  "defaultApplicationInfo": [
    {
      object (DefaultApplicationInfo)
    }
  ]
}
欄位
name

string

裝置名稱,格式為 enterprises/{enterpriseId}/devices/{deviceId}

userName

string

擁有這部裝置的使用者資源名稱,格式為 enterprises/{enterpriseId}/users/{userId}

managementMode

enum (ManagementMode)

Android Device Policy 在裝置上採用的管理模式類型。這會影響系統支援的政策設定。

state

enum (DeviceState)

要套用至裝置的狀態。這個欄位可透過 PATCH 要求修改。請注意,呼叫 enterprises.devices.patch 時,僅允許使用 ACTIVEDISABLED 值。如要讓裝置進入 DELETED 狀態,請呼叫 enterprises.devices.delete

appliedState

enum (DeviceState)

目前套用至裝置的狀態。

policyCompliant

boolean

裝置是否符合政策規定。

nonComplianceDetails[]

object (NonComplianceDetail)

裝置不符合的政策設定詳細資料。

enrollmentTime

string (Timestamp format)

裝置註冊時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

lastStatusReportTime

string (Timestamp format)

裝置上次傳送狀態報告的時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

lastPolicyComplianceReportTime
(deprecated)

string (Timestamp format)

已淘汰。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

lastPolicySyncTime

string (Timestamp format)

裝置上次擷取政策的時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

policyName

string

套用至裝置的政策名稱,格式為 enterprises/{enterpriseId}/policies/{policyId}。如未指定,系統會套用裝置使用者的 policy_name。這個欄位可透過 PATCH 要求修改。呼叫 enterprises.devices.patch 時,您只能指定 policyId,但 policyId 不得包含任何斜線。系統會推斷政策名稱的其餘部分。

appliedPolicyName

string

目前套用至裝置的政策名稱。

appliedPolicyVersion

string (int64 format)

目前套用至裝置的政策版本。

apiLevel

integer

裝置上執行的 Android 平台版本 API 級別。

enrollmentTokenData

string

如果裝置是透過註冊權杖註冊,且提供額外資料,這個欄位就會包含該資料。

enrollmentTokenName

string

如果裝置是透過註冊權杖註冊,這個欄位會包含權杖名稱。

disabledReason

object (UserFacingMessage)

如果裝置狀態為 DISABLED,裝置上會顯示選用訊息,說明裝置遭停用的原因。這個欄位可透過 PATCH 要求修改。

softwareInfo

object (SoftwareInfo)

裝置軟體的詳細資訊。只有在裝置政策中將 softwareInfoEnabled 設為 True 時,系統才會提供這項資訊。

hardwareInfo

object (HardwareInfo)

裝置硬體的詳細資訊。

displays[]

object (Display)

裝置螢幕的詳細資訊。只有在裝置政策中將 displayInfoEnabled 設為 True 時,系統才會提供這項資訊。

applicationReports[]

object (ApplicationReport)

裝置上安裝的應用程式報表。只有在裝置政策中 application_reports_enabled 為 true 時,這項資訊才可用。

previousDeviceNames[]

string

如果同一部實體裝置已註冊多次,這個欄位會顯示先前的裝置名稱。序號是專屬 ID,用於判斷先前是否已註冊相同的實體裝置。名稱會依時間順序排列。

networkInfo

object (NetworkInfo)

裝置網路資訊。只有在裝置政策中將 networkInfoEnabled 設為 True 時,系統才會提供這項資訊。

memoryInfo

object (MemoryInfo)

記憶體資訊:包含裝置記憶體和儲存空間的相關資訊。

memoryEvents[]

object (MemoryEvent)

與記憶體和儲存空間測量相關的事件,依時間先後順序排列。只有在裝置政策中將 memoryInfoEnabled 設為 True 時,系統才會提供這項資訊。

系統會保留事件一段時間,然後刪除舊事件。

powerManagementEvents[]

object (PowerManagementEvent)

裝置上的電源管理事件,依時間順序排列。只有在裝置政策中將 powerManagementEventsEnabled 設為 True 時,系統才會提供這項資訊。

hardwareStatusSamples[]

object (HardwareStatus)

依時間順序排列的硬體狀態樣本。只有在裝置政策中將 hardwareStatusEnabled 設為 True 時,系統才會提供這項資訊。

deviceSettings

object (DeviceSettings)

裝置設定資訊。只有在裝置政策中將 deviceSettingsEnabled 設為 True 時,系統才會提供這項資訊。

user

object (User)

裝置擁有者。

systemProperties

map (key: string, value: string)

與裝置相關的所選系統屬性名稱和值對應。只有在裝置政策中將 systemPropertiesEnabled 設為 True 時,系統才會提供這項資訊。

這個物件中包含 "key": value 組合的清單,範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

securityPosture

object (SecurityPosture)

裝置的安全狀態值,反映裝置的安全性。

ownership

enum (Ownership)

受管理裝置的擁有權。

commonCriteriaModeInfo

object (CommonCriteriaModeInfo)

共同準則模式相關資訊:資訊技術安全評估共同準則 (CC) 中定義的安全標準。

只有在裝置政策中,公司擁有的裝置設為 statusReportingSettings.commonCriteriaModeEnabledtrue 時,才能取得這項資訊。

appliedPasswordPolicies[]

object (PasswordRequirements)

目前套用至裝置的密碼規定。

  • 這個欄位存在的原因是,在某些情況下,套用的規定可能與 passwordPolicies 中指定的規定略有不同。
  • 請注意,這個欄位不會提供密碼是否符合規定等資訊。如需不符規定資訊,請參閱nonComplianceDetails
  • NonComplianceDetail.fieldPath 是根據 passwordPolicies 設定,而非根據這個欄位。
dpcMigrationInfo

object (DpcMigrationInfo)

僅供輸出。這部裝置是否從其他裝置政策控制器 (DPC) 管理的裝置遷移。

defaultApplicationInfo[]

object (DefaultApplicationInfo)

僅供輸出。DefaultApplicationType 的預設應用程式資訊。只有在裝置政策中將 defaultApplicationInfoReportingEnabled 設為 True 時,系統才會提供這項資訊。適用於 Android 16 以上版本。

全代管裝置會回報所有類型的應用程式。如果公司擁有的裝置設有工作資料夾,以及個人擁有的裝置,系統會針對工作資料夾回報 DEFAULT_BROWSERDEFAULT_CALL_REDIRECTIONDEFAULT_CALL_SCREENINGDEFAULT_DIALER 類型。設有工作資料夾的公司裝置也會回報 DEFAULT_WALLET,但只會包含工作資料夾資訊。

NonComplianceDetail

JSON 表示法
{
  "settingName": string,
  "nonComplianceReason": enum (NonComplianceReason),
  "packageName": string,
  "fieldPath": string,
  "currentValue": value,
  "installationFailureReason": enum (InstallationFailureReason),
  "specificNonComplianceReason": enum (SpecificNonComplianceReason),
  "specificNonComplianceContext": {
    object (SpecificNonComplianceContext)
  }
}
欄位
settingName

string

政策設定的名稱。這是頂層 Policy 欄位的 JSON 欄位名稱。

nonComplianceReason

enum (NonComplianceReason)

裝置不符合設定的原因。

packageName

string

指出哪個應用程式不符規定的套件名稱 (如適用)。

fieldPath

string

如果是含有巢狀欄位的設定,如果特定巢狀欄位不符合規定,這個欄位會指定違規欄位的完整路徑。路徑格式與 JavaScript 中參照政策 JSON 欄位的方式相同,也就是:1) 對於物件型別的欄位,欄位名稱後方會加上半形句號,然後是子欄位名稱。2) 如果是陣列型別的欄位,欄位名稱後方會加上以括號括住的陣列索引。舉例來說,如要指出第 3 個應用程式的 externalData 欄位中 url 欄位有問題,路徑會是 applications[2].externalData.url

currentValue

value (Value format)

如果無法套用政策設定,則為裝置上目前的設定值。

installationFailureReason

enum (InstallationFailureReason)

如果已設定 package_name,且不符規定的原因是 APP_NOT_INSTALLEDAPP_NOT_UPDATED,則會顯示應用程式無法安裝或更新的詳細原因。

specificNonComplianceReason

enum (SpecificNonComplianceReason)

裝置不符合設定的政策特定原因。

specificNonComplianceContext

object (SpecificNonComplianceContext)

specific_non_compliance_reason 的其他背景資訊。

JSON 表示法
{

  // Union field kind can be only one of the following:
  "nullValue": null,
  "numberValue": number,
  "stringValue": string,
  "boolValue": boolean,
  "structValue": {
    object
  },
  "listValue": array
  // End of list of possible types for union field kind.
}
欄位
聯集欄位 kind。值的類型。kind 只能是下列其中一項:
nullValue

null

表示空值。

numberValue

number

代表雙精度浮點數值。

stringValue

string

代表字串值。

boolValue

boolean

表示布林值。

structValue

object (Struct format)

代表結構化值。

listValue

array (ListValue format)

代表重複的 Value

結構

JSON 表示法
{
  "fields": {
    string: value,
    ...
  }
}
欄位
fields

map (key: string, value: value (Value format))

動態型別值的無序對應。

這個物件中包含 "key": value 組合的清單,範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

FieldsEntry

JSON 表示法
{
  "key": string,
  "value": value
}
欄位
key

string

value

value (Value format)

ListValue

JSON 表示法
{
  "values": [
    value
  ]
}
欄位
values[]

value (Value format)

動態型別值的重複欄位。

SpecificNonComplianceContext

JSON 表示法
{
  "oncWifiContext": {
    object (OncWifiContext)
  },
  "passwordPoliciesContext": {
    object (PasswordPoliciesContext)
  },
  "defaultApplicationContext": {
    object (DefaultApplicationContext)
  }
}
欄位
oncWifiContext

object (OncWifiContext)

與 Wi-Fi 設定相關的違規事項額外脈絡資訊。請參閱《ONC_WIFI_INVALID_VALUE》和《ONC_WIFI_API_LEVEL》。

passwordPoliciesContext

object (PasswordPoliciesContext)

與密碼政策相關的違規事項額外背景資訊。請參閱《PASSWORD_POLICIES_PASSWORD_EXPIRED》和《PASSWORD_POLICIES_PASSWORD_NOT_SUFFICIENT》。

defaultApplicationContext

object (DefaultApplicationContext)

僅供輸出。如果預設應用程式設定導致違規,請提供額外背景資訊。詳情請參閱《DEFAULT_APPLICATION_SETTING_FAILED_FOR_SCOPE》。

OncWifiContext

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

string

不符規定的 Wi-Fi 設定 GUID。

PasswordPoliciesContext

JSON 表示法
{
  "passwordPolicyScope": enum (PasswordPolicyScope)
}
欄位
passwordPolicyScope

enum (PasswordPolicyScope)

不符合規定的密碼範圍。

DefaultApplicationContext

JSON 表示法
{
  "defaultApplicationScope": enum (DefaultApplicationScope)
}
欄位
defaultApplicationScope

enum (DefaultApplicationScope)

僅供輸出。不符規定的預設應用程式設定範圍。

時間戳記

JSON 表示法
{
  "seconds": string,
  "nanos": integer
}
欄位
seconds

string (int64 format)

代表自 Unix 紀元 1970-01-01T00:00:00Z 起算的世界標準時間秒數。必須介於 -62135596800 和 253402300799 之間 (含),對應至 0001-01-01T00:00:00Z 至 9999-12-31T23:59:59Z。

nanos

integer

以奈秒為單位的非負秒數小數。這個欄位是時間長度的奈秒部分,並非秒數的替代值。如果秒數值為負數,且包含小數,奈秒值仍須為非負數,且會向前計時。必須介於 0 至 999,999,999 之間 (含)。

UserFacingMessage

JSON 表示法
{
  "localizedMessages": {
    string: string,
    ...
  },
  "defaultMessage": string
}
欄位
localizedMessages

map (key: string, value: string)

包含 <語言代碼, 訊息> 配對的地圖,其中語言代碼是格式正確的 BCP 47 語言代碼,例如 en-US、es-ES 或 fr。

這個物件中包含 "key": value 組合的清單,範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

defaultMessage

string

如果未指定任何本地化訊息,或使用者的語言代碼與任何本地化訊息都不相符,系統就會顯示預設訊息。如果提供任何本地化訊息,就必須提供預設訊息。

LocalizedMessagesEntry

JSON 表示法
{
  "key": string,
  "value": string
}
欄位
key

string

value

string

SoftwareInfo

JSON 表示法
{
  "androidVersion": string,
  "androidDevicePolicyVersionCode": integer,
  "androidDevicePolicyVersionName": string,
  "androidBuildNumber": string,
  "deviceKernelVersion": string,
  "bootloaderVersion": string,
  "androidBuildTime": string,
  "securityPatchLevel": string,
  "primaryLanguageCode": string,
  "deviceBuildSignature": string,
  "systemUpdateInfo": {
    object (SystemUpdateInfo)
  }
}
欄位
androidVersion

string

使用者看到的 Android 版本字串。例如 6.0.1

androidDevicePolicyVersionCode

integer

Android Device Policy 應用程式版本代碼。

androidDevicePolicyVersionName

string

向使用者顯示的 Android Device Policy 應用程式版本。

androidBuildNumber

string

Android 建構 ID 字串,用於向使用者顯示。例如 shamu-userdebug 6.0.1 MOB30I 2756745 dev-keys

deviceKernelVersion

string

核心版本,例如 2.6.32.9-g103d848

bootloaderVersion

string

系統啟動載入程式版本號碼,例如 0.6.7

androidBuildTime

string (Timestamp format)

建構時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

securityPatchLevel

string

安全性修補程式等級,例如 2016-05-01

primaryLanguageCode

string

裝置主要語言代碼的 IETF BCP 47 語言代碼。

deviceBuildSignature

string

與系統套件相關聯的 android.content.pm.Signature SHA-256 雜湊,可用於驗證系統版本是否經過修改。

systemUpdateInfo

object (SystemUpdateInfo)

可能待處理的系統更新資訊。

SystemUpdateInfo

JSON 表示法
{
  "updateStatus": enum (UpdateStatus),
  "updateReceivedTime": string
}
欄位
updateStatus

enum (UpdateStatus)

更新狀態:是否有更新,以及更新類型。

updateReceivedTime

string (Timestamp format)

更新首次可用的時間。值為零表示未設定這個欄位。只有在有更新項目時,系統才會設定這個欄位 (也就是說,updateStatus 不是 UPDATE_STATUS_UNKNOWN 也不是 UP_TO_DATE)。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

HardwareInfo

JSON 表示法
{
  "brand": string,
  "hardware": string,
  "deviceBasebandVersion": string,
  "manufacturer": string,
  "serialNumber": string,
  "model": string,
  "batteryShutdownTemperatures": [
    number
  ],
  "batteryThrottlingTemperatures": [
    number
  ],
  "cpuShutdownTemperatures": [
    number
  ],
  "cpuThrottlingTemperatures": [
    number
  ],
  "gpuShutdownTemperatures": [
    number
  ],
  "gpuThrottlingTemperatures": [
    number
  ],
  "skinShutdownTemperatures": [
    number
  ],
  "skinThrottlingTemperatures": [
    number
  ],
  "enterpriseSpecificId": string,
  "euiccChipInfo": [
    {
      object (EuiccChipInfo)
    }
  ]
}
欄位
brand

string

裝置品牌。例如 Google

hardware

string

硬體名稱。例如 Angler

deviceBasebandVersion

string

基頻版本。例如 MDM9625_104662.22.05.34p

manufacturer

string

製造商:例如 Motorola

serialNumber

string

裝置序號。不過,如果個人裝置搭載 Android 12 以上版本,這項權限與 enterpriseSpecificId 相同。

model

string

裝置型號。例如 Asus Nexus 7

batteryShutdownTemperatures[]

number

裝置上每個電池的攝氏溫度關機閾值。

batteryThrottlingTemperatures[]

number

裝置上每個電池的電池節流溫度門檻 (攝氏)。

cpuShutdownTemperatures[]

number

裝置上每個 CPU 的攝氏溫度關機閾值。

cpuThrottlingTemperatures[]

number

裝置上每個 CPU 的 CPU 節流溫度門檻 (攝氏)。

gpuShutdownTemperatures[]

number

裝置上每個 GPU 的攝氏溫度關機閾值。

gpuThrottlingTemperatures[]

number

裝置上每個 GPU 的攝氏溫度,達到這個溫度就會開始限制 GPU 效能。

skinShutdownTemperatures[]

number

裝置皮膚關機溫度門檻 (攝氏)。

skinThrottlingTemperatures[]

number

裝置皮膚的節流溫度門檻 (攝氏)。

enterpriseSpecificId

string

僅供輸出。可明確識別特定機構中個人裝置的 ID。在註冊相同機構的同一部實體裝置上,這個 ID 會在設定程序中保留,即使恢復原廠設定也不會變更。這項 ID 適用於搭載 Android 12 以上版本,並設有工作資料夾的個人裝置。

euiccChipInfo[]

object (EuiccChipInfo)

僅供輸出。與 eUICC 晶片相關的資訊。

EuiccChipInfo

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

string

僅供輸出。內嵌式身分證件 (EID),用於識別裝置上每個 eUICC 晶片的 eUICC 晶片。這項功能適用於搭載 Android 13 以上版本的公司裝置。

多媒體

JSON 表示法
{
  "name": string,
  "displayId": integer,
  "refreshRate": integer,
  "state": enum (DisplayState),
  "width": integer,
  "height": integer,
  "density": integer
}
欄位
name

string

螢幕名稱。

displayId

integer

不重複的螢幕 ID。

refreshRate

integer

螢幕的刷新率,以每秒影格數為單位。

state

enum (DisplayState)

螢幕狀態。

width

integer

螢幕寬度 (以像素為單位)。

height

integer

螢幕高度 (以像素為單位)。

density

integer

以每英吋點數表示的顯示密度。

ApplicationReport

JSON 表示法
{
  "packageName": string,
  "versionName": string,
  "versionCode": integer,
  "events": [
    {
      object (ApplicationEvent)
    }
  ],
  "displayName": string,
  "packageSha256Hash": string,
  "signingKeyCertFingerprints": [
    string
  ],
  "installerPackageName": string,
  "applicationSource": enum (ApplicationSource),
  "state": enum (ApplicationState),
  "keyedAppStates": [
    {
      object (KeyedAppState)
    }
  ],
  "userFacingType": enum (UserFacingType)
}
欄位
packageName

string

應用程式的套件名稱。

versionName

string

向使用者顯示的應用程式版本。

versionCode

integer

應用程式版本代碼,可用於判斷某版本是否比另一個版本更新。

events[]

object (ApplicationEvent)

過去 30 小時內發生的應用程式事件清單。

displayName

string

應用程式的顯示名稱。

packageSha256Hash

string

應用程式 APK 檔案的 SHA-256 雜湊值,可用於驗證應用程式是否經過修改。雜湊值的每個位元組都會以兩位數的十六進位數字表示。

signingKeyCertFingerprints[]

string

與應用程式套件相關聯的每個 android.content.pm.Signature 的 SHA-1 雜湊。每個雜湊值的每個位元組都會以兩位數的十六進位數字表示。

installerPackageName

string

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

applicationSource

enum (ApplicationSource)

套件來源。

state

enum (ApplicationState)

應用程式狀態。

keyedAppStates[]

object (KeyedAppState)

應用程式回報的鍵控應用程式狀態清單。

userFacingType

enum (UserFacingType)

應用程式是否面向使用者。

ApplicationEvent

JSON 表示法
{
  "eventType": enum (ApplicationEventType),
  "createTime": string
}
欄位
eventType

enum (ApplicationEventType)

應用程式事件類型。

createTime

string (Timestamp format)

活動的建立時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

KeyedAppState

JSON 表示法
{
  "key": string,
  "severity": enum (Severity),
  "message": string,
  "data": string,
  "createTime": string,
  "lastUpdateTime": string
}
欄位
key

string

應用程式狀態的鍵。做為應用程式提供狀態的參考點。舉例來說,提供受管理設定意見回饋時,這個鍵可以是受管理設定鍵。

severity

enum (Severity)

應用程式狀態的嚴重程度。

message

string

(選用) 說明應用程式狀態的訊息字串 (格式不限)。如果狀態是由特定值 (例如受管理設定值) 觸發,則應將該值納入訊息。

data

string

(選用) 供 EMM 讀取的機器可讀取值。舉例來說,管理員可以在 EMM 控制台中設定可供查詢的值 (例如「如果 battery_warning 資料 < 10,請通知我」)。

createTime

string (Timestamp format)

裝置上應用程式狀態的建立時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

lastUpdateTime

string (Timestamp format)

應用程式狀態的上次更新時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

NetworkInfo

JSON 表示法
{
  "imei": string,
  "meid": string,
  "wifiMacAddress": string,
  "networkOperatorName": string,
  "telephonyInfos": [
    {
      object (TelephonyInfo)
    }
  ]
}
欄位
imei

string

GSM 裝置的 IMEI 號碼。例如 A1000031212

meid

string

CDMA 裝置的 MEID 號碼。例如 A00000292788E1

wifiMacAddress

string

裝置的 Wi-Fi MAC 位址。例如 7c:11:11:11:11:11

networkOperatorName
(deprecated)

string

目前註冊業者的字母名稱。例如 Vodafone。

telephonyInfos[]

object (TelephonyInfo)

提供裝置上每張 SIM 卡的相關電話資訊。僅支援 Android API 級別 23 以上的完全受管理裝置。

TelephonyInfo

JSON 表示法
{
  "phoneNumber": string,
  "carrierName": string,
  "iccId": string,
  "activationState": enum (ActivationState),
  "configMode": enum (ConfigMode)
}
欄位
phoneNumber

string

與這張 SIM 卡相關聯的電話號碼。

carrierName

string

與這張 SIM 卡相關聯的電信業者名稱。

iccId

string

僅供輸出。與這張 SIM 卡相關聯的 ICCID。

activationState

enum (ActivationState)

僅供輸出。裝置上 SIM 卡的啟用狀態。這項功能僅適用於 eSIM 卡。這項功能適用於 API 級別 35 以上版本的所有裝置。實體 SIM 卡和 API 級別 35 以下的裝置一律會顯示 ACTIVATION_STATE_UNSPECIFIED

configMode

enum (ConfigMode)

僅供輸出。裝置上 SIM 卡的設定模式。這項功能僅適用於 eSIM 卡。這項功能適用於 API 級別 35 以上版本的所有裝置。實體 SIM 卡和 API 級別 35 以下的裝置一律會顯示 CONFIG_MODE_UNSPECIFIED

MemoryInfo

JSON 表示法
{
  "totalRam": string,
  "totalInternalStorage": string
}
欄位
totalRam

string (int64 format)

裝置上的 RAM 總量,以位元組為單位。

totalInternalStorage

string (int64 format)

裝置上的內部儲存空間總量,以位元組為單位。

MemoryEvent

JSON 表示法
{
  "eventType": enum (MemoryEventType),
  "createTime": string,
  "byteCount": string
}
欄位
eventType

enum (MemoryEventType)

這是指活動類型。

createTime

string (Timestamp format)

活動的建立時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

byteCount

string (int64 format)

媒體中的可用位元組數,或是 EXTERNAL_STORAGE_DETECTED 的儲存媒體總容量 (以位元組為單位)。

PowerManagementEvent

JSON 表示法
{
  "eventType": enum (PowerManagementEventType),
  "createTime": string,
  "batteryLevel": number
}
欄位
eventType

enum (PowerManagementEventType)

這是指活動類型。

createTime

string (Timestamp format)

活動的建立時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

batteryLevel

number

如果是 BATTERY_LEVEL_COLLECTED 事件,則為電池電量百分比。

HardwareStatus

JSON 表示法
{
  "createTime": string,
  "batteryTemperatures": [
    number
  ],
  "cpuTemperatures": [
    number
  ],
  "gpuTemperatures": [
    number
  ],
  "skinTemperatures": [
    number
  ],
  "fanSpeeds": [
    number
  ],
  "cpuUsages": [
    number
  ]
}
欄位
createTime

string (Timestamp format)

測量時間。

使用 RFC 3339,產生的輸出內容一律會經過 Z 正規化,並使用 0、3、6 或 9 個小數位數,也接受「Z」以外的偏移量。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

batteryTemperatures[]

number

裝置上每個電池目前的攝氏溫度。

cpuTemperatures[]

number

裝置上每個 CPU 目前的攝氏溫度。

gpuTemperatures[]

number

裝置上每個 GPU 目前的攝氏溫度。

skinTemperatures[]

number

目前裝置的皮膚溫度 (以攝氏為單位)。

fanSpeeds[]

number

裝置上每個風扇的轉速 (RPM)。空陣列表示系統沒有風扇,或不支援風扇速度。

cpuUsages[]

number

裝置上每個可用核心的 CPU 使用率 (百分比)。每個拔除插頭的核心用量都是 0。空陣列表示系統不支援 CPU 使用率。

DeviceSettings

JSON 表示法
{
  "isDeviceSecure": boolean,
  "unknownSourcesEnabled": boolean,
  "developmentSettingsEnabled": boolean,
  "adbEnabled": boolean,
  "isEncrypted": boolean,
  "encryptionStatus": enum (EncryptionStatus),
  "verifyAppsEnabled": boolean
}
欄位
isDeviceSecure

boolean

裝置是否以 PIN 碼/密碼設定安全保護。

unknownSourcesEnabled

boolean

是否啟用安裝來源不明應用程式的功能。

developmentSettingsEnabled

boolean

裝置是否已啟用開發人員模式。

adbEnabled

boolean

裝置是否已啟用 ADB

isEncrypted

boolean

是否已啟用儲存空間加密。

encryptionStatus

enum (EncryptionStatus)

DevicePolicyManager 的加密狀態。

verifyAppsEnabled

boolean

裝置是否強制執行 Google Play 安全防護驗證

使用者

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

string

您為這個使用者建立的專屬 ID,例如 user342asset#44418。建立使用者時必須設定這個欄位,且無法更新。這個欄位不得包含個人識別資訊 (PII)。這個 ID 不得超過 1024 個字元,否則更新政策要求會失敗。

SystemPropertiesEntry

JSON 表示法
{
  "key": string,
  "value": string
}
欄位
key

string

value

string

SecurityPosture

JSON 表示法
{
  "devicePosture": enum (DevicePosture),
  "postureDetails": [
    {
      object (PostureDetail)
    }
  ]
}
欄位
devicePosture

enum (DevicePosture)

裝置的資安態勢值。

postureDetails[]

object (PostureDetail)

裝置安全狀態的詳細資料。

PostureDetail

JSON 表示法
{
  "securityRisk": enum (SecurityRisk),
  "advice": [
    {
      object (UserFacingMessage)
    }
  ]
}
欄位
securityRisk

enum (SecurityRisk)

對裝置安全態勢造成負面影響的特定安全風險。

advice[]

object (UserFacingMessage)

提供相應的管理員適用建議,以降低這項安全風險,並提升裝置的安全性。

CommonCriteriaModeInfo

JSON 表示法
{
  "commonCriteriaModeStatus": enum (CommonCriteriaModeStatus),
  "policySignatureVerificationStatus": enum (PolicySignatureVerificationStatus)
}
欄位
commonCriteriaModeStatus

enum (CommonCriteriaModeStatus)

是否啟用共同準則模式。

policySignatureVerificationStatus

enum (PolicySignatureVerificationStatus)

僅供輸出。政策簽名驗證狀態。

PasswordRequirements

JSON 表示法
{
  "passwordMinimumLength": integer,
  "passwordMinimumLetters": integer,
  "passwordMinimumLowerCase": integer,
  "passwordMinimumNonLetter": integer,
  "passwordMinimumNumeric": integer,
  "passwordMinimumSymbols": integer,
  "passwordMinimumUpperCase": integer,
  "passwordQuality": enum (PasswordQuality),
  "passwordHistoryLength": integer,
  "maximumFailedPasswordsForWipe": integer,
  "passwordExpirationTimeout": string,
  "passwordScope": enum (PasswordPolicyScope),
  "requirePasswordUnlock": enum (RequirePasswordUnlock),
  "unifiedLockSettings": enum (UnifiedLockSettings)
}
欄位
passwordMinimumLength

integer

密碼長度下限。如果值為 0,表示沒有限制。只有在 password_qualityNUMERICNUMERIC_COMPLEXALPHABETICALPHANUMERICCOMPLEX 時,才會強制執行這項規定。

passwordMinimumLetters

integer

密碼中必須包含的字母數量下限。只有在 password_qualityCOMPLEX 時才會強制執行。

passwordMinimumLowerCase

integer

密碼中必須包含的小寫字母數量下限。只有在 password_qualityCOMPLEX 時才會強制執行。

passwordMinimumNonLetter

integer

密碼中非英文字母字元 (數字或符號) 的下限。只有在 password_qualityCOMPLEX 時才會強制執行。

passwordMinimumNumeric

integer

密碼中必須包含的數字位數下限。只有在 password_qualityCOMPLEX 時才會強制執行。

passwordMinimumSymbols

integer

密碼中符號的數量下限。只有在 password_qualityCOMPLEX 時才會強制執行。

passwordMinimumUpperCase

integer

密碼中大寫字母的數量下限。只有在 password_qualityCOMPLEX 時才會強制執行。

passwordQuality

enum (PasswordQuality)

密碼品質規定。

passwordHistoryLength

integer

密碼記錄的長度。設定這個欄位後,使用者就無法輸入與歷程記錄中任何密碼相同的新密碼。如果值為 0,表示沒有限制。

maximumFailedPasswordsForWipe

integer

裝置解鎖密碼輸入錯誤次數上限 (一旦超出限制,即抹除裝置內容)。如果值為 0,表示沒有限制。

passwordExpirationTimeout

string (Duration format)

密碼到期逾時。

時間長度以秒為單位,最多可有 9 個小數位數,並應以「s」結尾,例如:"3.5s"

passwordScope

enum (PasswordPolicyScope)

密碼規定適用的範圍。

requirePasswordUnlock

enum (RequirePasswordUnlock)

裝置或工作設定檔透過高強度驗證方式 (密碼、PIN 碼、解鎖圖案) 解鎖後,可使用任何其他驗證方式 (例如指紋、信任代理程式、臉部) 解鎖的時間長度。指定時間過後,只有高強度驗證方法才能解鎖裝置或工作資料夾。

unifiedLockSettings

enum (UnifiedLockSettings)

如果裝置搭載 Android 9 以上版本並設有工作資料夾,這個設定可控管裝置和工作資料夾是否允許使用統一鎖定功能。只有在 password_scope 設為 SCOPE_PROFILE 時,才能設定這個值,否則系統會拒絕這項政策。如果使用者未設定其他工作應用程式鎖定方式,且這個欄位設為 REQUIRE_SEPARATE_WORK_LOCK,系統會回報 NonComplianceDetail,並將 nonComplianceReason 設為 USER_ACTION

時間長度

JSON 表示法
{
  "seconds": string,
  "nanos": integer
}
欄位
seconds

string (int64 format)

時間範圍的簽署秒數。必須介於 -315,576,000,000 至 +315,576,000,000 之間 (含這兩個值)。注意:這些界限是根據以下計算得出:60 秒/分鐘 * 60 分鐘/小時 * 24 小時/天 * 365.25 天/年 * 10000 年

nanos

integer

時間跨度的小數部分 (以奈秒為單位),可為正數或負數。如果時間長度不到一秒,系統會以 0 seconds 欄位和正數或負數 nanos 欄位表示。如果時間長度為一秒以上,nanos 欄位的非零值必須與 seconds 欄位相同。值必須介於 -999,999,999 到 +999,999,999 之間 (含)。

DpcMigrationInfo

JSON 表示法
{
  "previousDpc": string,
  "additionalData": string
}
欄位
previousDpc

string

僅供輸出。如果這個裝置是從其他 DPC 遷移而來,這個欄位會顯示裝置的套件名稱。否則不會填入。

additionalData

string

僅供輸出。如果這部裝置是從其他 DPC 遷移而來,遷移權杖的 additionalData 欄位會填入這裡。

DefaultApplicationInfo

JSON 表示法
{
  "defaultApplicationType": enum (DefaultApplicationType),
  "packageName": string,
  "defaultApplicationSettingAttempts": [
    {
      object (DefaultApplicationSettingAttempt)
    }
  ]
}
欄位
defaultApplicationType

enum (DefaultApplicationType)

僅供輸出。預設應用程式類型。

packageName

string

僅供輸出。目前預設應用程式的套件名稱。

defaultApplicationSettingAttempts[]

object (DefaultApplicationSettingAttempt)

僅供輸出。預設應用程式設定嘗試的詳細資料,順序與 defaultApplications 中列出的相同。

DefaultApplicationSettingAttempt

JSON 表示法
{
  "packageName": string,
  "attemptOutcome": enum (AttemptOutcome)
}
欄位
packageName

string

僅供輸出。嘗試存取的應用程式套件名稱。

attemptOutcome

enum (AttemptOutcome)

僅供輸出。將應用程式設為預設應用程式的結果。

工具註解

破壞性提示:❌ | 等冪提示:✅ | 唯讀提示:✅ | 開放世界提示:❌