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 的值将被强制转换为 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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

如果同一实体设备已多次注册,此字段会包含其之前的设备名称。序列号用作唯一标识符,用于确定同一物理设备之前是否已注册。这些名称按时间顺序排列。

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)

有关 Common Criteria 模式的信息 - 信息技术安全评估通用准则 (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

表示 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_VALUEONC_WIFI_API_LEVEL

passwordPoliciesContext

object (PasswordPoliciesContext)

有关密码政策违规行为的其他背景信息。请参阅 PASSWORD_POLICIES_PASSWORD_EXPIREDPASSWORD_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)

表示世界协调时间 (UTC) 的秒数(从 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 build 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 哈希值,可用于验证系统 build 是否未被修改。

systemUpdateInfo

object (SystemUpdateInfo)

有关潜在的待处理系统更新的信息。

SystemUpdateInfo

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

enum (UpdateStatus)

更新的状态:是否存在更新以及更新的类型。

updateReceivedTime

string (Timestamp format)

相应更新首次可用的时间。值为 0 表示未设置相应字段。仅当有更新可用时(即 updateStatus 既不是 UPDATE_STATUS_UNKNOWN 也不是 UP_TO_DATE),系统才会设置此字段。

采用 RFC 3339 标准,生成的输出将始终进行 Z 规范化(即转换为 UTC 零时区格式并在末尾附加 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 的 CPU 关闭温度阈值(以摄氏度为单位)。

cpuThrottlingTemperatures[]

number

设备上每个 CPU 的 CPU 降频温度阈值(以摄氏度为单位)。

gpuShutdownTemperatures[]

number

设备上每个 GPU 的 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

仅限输出。用于标识设备上每个 eUICC 芯片的 eUICC 芯片嵌入式身份证件 (EID)。此功能适用于搭载 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 规范化(即转换为 UTC 零时区格式并在末尾附加 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 的当前 CPU 温度(以摄氏度为单位)。

gpuTemperatures[]

number

设备上每个 GPU 的当前 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

您为相应用户创建的唯一标识符,例如 user342asset#44418。创建用户时必须设置此字段,且无法更新。此字段不得包含个人身份信息 (PII)。此标识符不得超过 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)

Common Criteria 模式是否已启用。

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)

密码过期超时时间。

该时长以秒为单位,最多包含九个小数位,以“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

时间跨度的有符号秒数小数部分(以纳秒为单位)。小于 1 秒的时长用 0 seconds 字段和正或负 nanos 字段表示。对于时长为 1 秒或更长时间的情况,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)

仅限输出。将应用设为默认应用后的结果。

工具注释

破坏性提示:❌ | 等幂性提示:✅ | 只读提示:✅ | 开放世界提示:❌