- HTTP 请求
 - 路径参数
 - 请求正文
 - 响应正文
 - 授权范围
 - 命令
 - CommandType
 - CommandErrorCode
 - ResetPasswordFlag
 - ClearAppsDataParams
 - StartLostModeParams
 - StopLostModeParams
 - AddEsimParams
 - ActivationState
 - RemoveEsimParams
 - RequestDeviceInfoParams
 - DeviceInfo
 - WipeParams
 - ClearAppsDataStatus
 - PerAppResult
 - ClearingResult
 - StartLostModeStatus
 - 状态
 - StopLostModeStatus
 - 状态
 - EsimCommandStatus
 - 状态
 - InternalErrorDetails
 - OperationCodeDetail
 - ErrorCodeDetail
 - EsimInfo
 - RequestDeviceInfoStatus
 - 状态
 - EidInfo
 - Eid
 - 试试看!
 
向设备发出命令。返回的 Operation 资源在其 metadata 字段中包含 Command。使用 get operation 方法获取命令的状态。
HTTP 请求
POST https://androidmanagement.googleapis.com/v1/{name=enterprises/*/devices/*}:issueCommand
网址采用 gRPC 转码语法。
路径参数
| 参数 | |
|---|---|
name | 
                
                   
 设备的名称,格式为   | 
              
请求正文
请求正文包含一个 Command 实例。
响应正文
如果成功,则响应正文包含一个 Operation 实例。
授权范围
需要以下 OAuth 范围:
https://www.googleapis.com/auth/androidmanagement
如需了解详情,请参阅 OAuth 2.0 Overview。
命令
命令。
| JSON 表示法 | 
|---|
{ "type": enum (  | 
              
| 字段 | |
|---|---|
type | 
                
                   
 命令的类型。  | 
              
createTime | 
                
                   
 相应命令的创建时间戳。时间戳由服务器自动生成。 采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:  | 
              
duration | 
                
                   
 命令的有效时长。如果设备在此期间未执行该命令,该命令将过期。如果未指定,则默认时长为 10 分钟。没有时长上限。 该时长以秒为单位,最多包含九个小数位,以“  | 
              
userName | 
                
                   
 拥有相应设备的用户的资源名称,格式为   | 
              
errorCode | 
                
                   
 如果命令失败,则会显示说明失败原因的错误代码。如果命令被调用方取消,则不会设置此值。对于有关命令错误的推理,请按以下顺序优先选择字段(最优先选择的字段排在最前面):1. 特定于命令的字段,例如   | 
              
newPassword | 
                
                   
 对于   | 
              
resetPasswordFlags[] | 
                
                   
 对于   | 
              
联合字段  如果设置了此字段,则不得设置   | 
              |
clearAppsDataParams | 
                
                   
 用于清除设备中指定应用的数据的   | 
              
startLostModeParams | 
                
                   
 用于将设备置于丢失模式的   | 
              
stopLostModeParams | 
                
                   
 用于使设备退出丢失模式的   | 
              
addEsimParams | 
                
                   
 可选。用于向设备添加 eSIM 卡配置文件的   | 
              
removeEsimParams | 
                
                   
 可选。用于从设备中移除 eSIM 卡配置文件的   | 
              
requestDeviceInfoParams | 
                
                   
 可选。用于获取设备相关信息的   | 
              
wipeParams | 
                
                   
 可选。用于擦除设备的   | 
              
联合字段 status。特定于命令的状态。请注意,某些命令不使用此参数,尤其是 、、 和 。未来,这些命令也可能会使用此功能。status 只能是下列其中一项: | 
              |
clearAppsDataStatus | 
                
                   
 仅限输出。用于清除设备中指定应用数据的   | 
              
startLostModeStatus | 
                
                   
 仅限输出。将设备置于丢失模式的   | 
              
stopLostModeStatus | 
                
                   
 仅限输出。  | 
              
esimStatus | 
                
                   
 仅限输出。  | 
              
requestDeviceInfoStatus | 
                
                   
 仅限输出。  | 
              
CommandType
命令类型。
| 枚举 | |
|---|---|
COMMAND_TYPE_UNSPECIFIED | 
                此值不允许。 | 
LOCK | 
                锁定设备,就像锁屏超时时间已过一样。 | 
RESET_PASSWORD | 
                重置用户的密码。 | 
REBOOT | 
                重新启动设备。仅在搭载 Android 7.0(API 级别 24)或更高版本的完全受管设备上受支持。 | 
RELINQUISH_OWNERSHIP | 
                从公司自有的 Android 8.0 及更高版本的设备中移除工作资料和所有政策,从而将设备用于个人用途。与个人资料关联的应用和数据会保留。设备在确认命令后,将从服务器中删除。 | 
CLEAR_APP_DATA | 
                清除指定应用的应用数据。Android 9 及更高版本支持此功能。请注意,应用可以将数据存储在其应用数据之外,例如存储在外部存储空间或用户字典中。另请参阅 。 | 
              
START_LOST_MODE | 
                将设备置于丢失模式。仅在全托管式设备或具有受管理资料的组织自有设备上受支持。另请参阅 。 | 
              
STOP_LOST_MODE | 
                使设备退出丢失模式。仅在全托管式设备或具有受管理资料的组织自有设备上受支持。另请参阅 。 | 
              
ADD_ESIM | 
                向设备添加 eSIM 卡配置文件。Android 15 及更高版本支持此功能。另请参阅 。如需移除 eSIM 卡配置文件,请使用  命令。如需确定在擦除设备时 eSIM 卡配置文件会发生什么情况,请在政策中设置 。注意:如需在单个设备上配置多个 eSIM 卡,建议在连续执行命令之间引入几分钟的延迟。 | 
              
REMOVE_ESIM | 
                从设备中移除 eSIM 卡配置文件。Android 15 及更高版本支持此功能。另请参阅 。 | 
              
REQUEST_DEVICE_INFO | 
                请求与设备相关的信息。 | 
WIPE | 
                通过将公司自有设备恢复出厂设置或删除装有工作资料的个人设备的工作资料来擦除设备。只有在设备确认该命令后,才会执行清空操作。在此之前,您可以取消该命令。 | 
CommandErrorCode
命令错误代码。此字段是只读字段,由服务器填充。
| 枚举 | |
|---|---|
COMMAND_ERROR_CODE_UNSPECIFIED | 
                不存在错误。 | 
UNKNOWN | 
                发生未知错误。 | 
API_LEVEL | 
                设备的 API 级别不支持此命令。 | 
MANAGEMENT_MODE | 
                管理模式(资料所有者、设备所有者等)不支持该命令。 | 
INVALID_VALUE | 
                相应命令的参数值无效。 | 
UNSUPPORTED | 
                设备不支持该命令。将 Android 设备政策更新到最新版本或许能解决此问题。 | 
ResetPasswordFlag
可用于 RESET_PASSWORD 命令类型的标志。
| 枚举 | |
|---|---|
RESET_PASSWORD_FLAG_UNSPECIFIED | 
                此值会被忽略。 | 
REQUIRE_ENTRY | 
                在用户输入密码之前,不允许其他管理员再次更改密码。 | 
DO_NOT_ASK_CREDENTIALS_ON_BOOT | 
                不在设备启动时要求用户提供凭据。 | 
LOCK_NOW | 
                重置密码后锁定设备。 | 
ClearAppsDataParams
与  命令关联的参数,用于从设备中清除指定应用的数据。CLEAR_APP_DATA
| JSON 表示法 | 
|---|
{ "packageNames": [ string ] }  | 
              
| 字段 | |
|---|---|
packageNames[] | 
                
                   
 执行命令时将清除其数据的应用的软件包名称。  | 
              
StartLostModeParams
与  命令关联的参数,用于将设备置于丢失模式。必须提供至少一个参数(组织名称除外),才能将设备置于丢失模式。START_LOST_MODE
| JSON 表示法 | 
|---|
{ "lostMessage": { object (  | 
              
| 字段 | |
|---|---|
lostMessage | 
                
                   
 设备处于丢失模式时向用户显示的消息。  | 
              
lostPhoneNumber | 
                
                   
 当设备处于丢失模式且用户点按“呼叫所有者”按钮时,系统将拨打的电话号码。  | 
              
lostEmailAddress | 
                
                   
 当设备处于丢失模式时向用户显示的电子邮件地址。  | 
              
lostStreetAddress | 
                
                   
 当设备处于丢失模式时向用户显示的街道地址。  | 
              
lostOrganization | 
                
                   
 当设备处于丢失模式时向用户显示的组织名称。  | 
              
StopLostModeParams
此类型没有字段。
与  命令关联的参数,用于将设备从丢失模式中恢复。STOP_LOST_MODE
AddEsimParams
与  命令关联的参数,用于向设备添加 eSIM 卡配置文件。ADD_ESIM
| JSON 表示法 | 
|---|
{
  "activationCode": string,
  "activationState": enum ( | 
              
| 字段 | |
|---|---|
activationCode | 
                
                   
 必需。eSIM 卡配置文件的激活码。  | 
              
activationState | 
                
                   
 必需。下载 eSIM 卡配置文件后的激活状态。  | 
              
ActivationState
下载 eSIM 卡配置文件后的激活状态。
| 枚举 | |
|---|---|
ACTIVATION_STATE_UNSPECIFIED | 
                未指定 eSIM 卡激活状态。默认情况下,在个人自有设备上,eSIM 卡配置文件为 ;在公司自有设备上,eSIM 卡配置文件为 。 | 
              
ACTIVATED | 
                下载后,系统会自动激活 eSIM 卡。如果将此状态设置为个人自有设备的激活状态,系统将拒绝该命令。 | 
NOT_ACTIVATED | 
                eSIM 卡配置文件已下载,但尚未激活。在这种情况下,用户需要在设备上手动激活 eSIM 卡。 | 
RemoveEsimParams
与用于从设备中移除 eSIM 卡配置文件的  命令关联的参数。REMOVE_ESIM
| JSON 表示法 | 
|---|
{ "iccId": string }  | 
              
| 字段 | |
|---|---|
iccId | 
                
                   
 必需。要删除的 eSIM 卡配置文件的 ICC ID。  | 
              
RequestDeviceInfoParams
与  命令关联的参数,用于获取设备相关信息。REQUEST_DEVICE_INFO
| JSON 表示法 | 
|---|
{
  "deviceInfo": enum ( | 
              
| 字段 | |
|---|---|
deviceInfo | 
                
                   
 必需。要请求的设备信息类型。  | 
              
DeviceInfo
要请求的设备信息类型。
| 枚举 | |
|---|---|
DEVICE_INFO_UNSPECIFIED | 
                此值不允许。 | 
EID | 
                请求获取 eSIM 卡的标识符。系统会要求用户批准披露相应信息,然后才能返回结果。如果用户未批准披露声明,则返回 。此功能仅适用于搭载 Android 13 及更高版本且带有工作资料的个人自有设备。 | 
              
WipeParams
与用于擦除设备的  命令关联的参数。WIPE
| JSON 表示法 | 
|---|
{ "wipeDataFlags": [ enum (  | 
              
| 字段 | |
|---|---|
wipeDataFlags[] | 
                
                   
 可选。用于确定要清除哪些数据的标志。  | 
              
wipeReason | 
                
                   
 可选。在擦除个人设备上的工作资料之前向用户显示的简短消息。这不会影响公司自有设备。消息长度上限为 200 个字符。  | 
              
ClearAppsDataStatus
用于清除设备中指定应用数据的  命令的状态。CLEAR_APP_DATA
| JSON 表示法 | 
|---|
{
  "results": {
    string: {
      object ( | 
              
| 字段 | |
|---|---|
results | 
                
                   
 每个应用的结果,即从软件包名称到相应清除结果的映射。 包含一系列   | 
              
PerAppResult
尝试清除单个应用的数据的结果。
| JSON 表示法 | 
|---|
{
  "clearingResult": enum ( | 
              
| 字段 | |
|---|---|
clearingResult | 
                
                   
 尝试清除单个应用的数据的结果。  | 
              
ClearingResult
尝试清除单个应用的数据的结果。
| 枚举 | |
|---|---|
CLEARING_RESULT_UNSPECIFIED | 
                未指定结果。 | 
SUCCESS | 
                此应用的数据已成功清除。 | 
APP_NOT_FOUND | 
                找不到相应应用,因此无法清除该应用的数据。 | 
APP_PROTECTED | 
                此应用受保护,因此无法清除其数据。例如,这可能适用于对设备运行至关重要的应用,例如 Google Play 商店。 | 
API_LEVEL | 
                由于设备 API 级别不支持此命令,因此无法清除相应应用的数据。 | 
StartLostModeStatus
将设备置于丢失模式的  命令的状态。START_LOST_MODE
| JSON 表示法 | 
|---|
{
  "status": enum ( | 
              
| 字段 | |
|---|---|
status | 
                
                   
 状态。请参阅   | 
              
状态
状态。请参阅 。StartLostModeStatus
| 枚举 | |
|---|---|
STATUS_UNSPECIFIED | 
                未指定。未使用此值。 | 
SUCCESS | 
                设备已进入丢失模式。 | 
RESET_PASSWORD_RECENTLY | 
                由于管理员最近重置了设备的密码,因此无法将设备置于丢失模式。 | 
USER_EXIT_LOST_MODE_RECENTLY | 
                由于用户最近退出了丢失模式,因此无法将设备设为丢失模式。 | 
ALREADY_IN_LOST_MODE | 
                设备已处于丢失模式。 | 
StopLostModeStatus
 命令的状态,用于使设备退出丢失模式。STOP_LOST_MODE
| JSON 表示法 | 
|---|
{
  "status": enum ( | 
              
| 字段 | |
|---|---|
status | 
                
                   
 状态。请参阅   | 
              
状态
状态。请参阅 。StopLostModeStatus
| 枚举 | |
|---|---|
STATUS_UNSPECIFIED | 
                未指定。未使用此值。 | 
SUCCESS | 
                设备已退出丢失模式。 | 
NOT_IN_LOST_MODE | 
                设备未处于丢失模式。 | 
EsimCommandStatus
 或 ADD_ESIM 命令的状态和错误详细信息(如有)。REMOVE_ESIM
| JSON 表示法 | 
|---|
{ "status": enum (  | 
              
| 字段 | |
|---|---|
status | 
                
                   
 仅限输出。  | 
              
esimInfo | 
                
                   
 仅限输出。有关已添加或移除的 eSIM 卡的信息。仅当 eSIM 卡操作   | 
              
联合字段 status_details。 或  命令的状态详细信息。status_details 只能是下列其中一项: | 
              |
internalErrorDetails | 
                
                   
 仅限输出。如果   | 
              
状态
 或 ADD_ESIM 命令的状态。REMOVE_ESIM
| 枚举 | |
|---|---|
STATUS_UNSPECIFIED | 
                未指定。未使用此值。 | 
SUCCESS | 
                已在设备上成功执行 eSIM 卡操作。 | 
IN_PROGRESS | 
                eSIM 卡操作正在进行中。 | 
PENDING_USER_ACTION | 
                用户需要采取行动才能继续执行 eSIM 卡操作。 | 
ERROR_SETUP_IN_PROGRESS | 
                设置正在进行时,无法执行 eSIM 卡操作。 | 
ERROR_USER_DENIED | 
                用户已拒绝 eSIM 卡操作。 | 
INTERNAL_ERROR | 
                尝试在设备上添加或移除 eSIM 卡时出错,请参阅 。 | 
              
ERROR_ICC_ID_NOT_FOUND | 
                对于  命令,在设备上找不到要移除的 eSIM 卡的 。这可能意味着 eSIM 卡不属于企业,或者设备上没有与  对应的 eSIM 卡。 | 
              
ERROR_MULTIPLE_ACTIVE_ESIMS_NO_AVAILABLE_SLOT | 
                尝试添加新 eSIM 卡时,由于设备上的多个 eSIM 卡卡槽包含有效的 eSIM 卡配置文件,并且没有可用的空闲 eSIM 卡卡槽,因此  命令失败,且新 eSIM 卡的激活状态设置为 。为解决此问题,可以添加新 eSIM 卡,并将其激活状态设置为  以供日后手动激活;或者用户必须先停用现有的有效 eSIM 卡,然后才能继续操作。 | 
              
InternalErrorDetails
如果  或 ADD_ESIM 命令存在内部错误,则提供内部错误详细信息。REMOVE_ESIM
| JSON 表示法 | 
|---|
{ "operationCode": string, "errorCode": string, "operationCodeDetail": enum (  | 
              
| 字段 | |
|---|---|
operationCode | 
                
                   
 仅限输出。操作代码的整数表示形式,如此处所述。如需了解详情,请参阅   | 
              
errorCode | 
                
                   
 仅限输出。错误代码的整数表示形式,如此处所示。另请参阅   | 
              
operationCodeDetail | 
                
                   
 仅限输出。与   | 
              
errorCodeDetail | 
                
                   
 仅限输出。与   | 
              
OperationCodeDetail
与  对应的操作代码详细信息。operationCode
| 枚举 | |
|---|---|
OPERATION_CODE_DETAIL_UNSPECIFIED | 
                未指定操作代码详情。Android Management API 无法识别 。不过,请参阅 。 | 
              
OPERATION_SYSTEM | 
                如需了解详情,请参阅 EuiccManager.OPERATION_SYSTEM。 | 
OPERATION_SIM_SLOT | 
                如需了解详情,请参阅 EuiccManager.OPERATION_SIM_SLOT。 | 
OPERATION_EUICC_CARD | 
                如需了解详情,请参阅 EuiccManager.OPERATION_EUICC_CARD。 | 
OPERATION_SMDX | 
                如需了解详情,请参阅 EuiccManager.OPERATION_SMDX。 | 
OPERATION_SWITCH | 
                如需了解详情,请参阅 EuiccManager.OPERATION_SWITCH。 | 
OPERATION_DOWNLOAD | 
                如需了解详情,请参阅 EuiccManager.OPERATION_DOWNLOAD。 | 
OPERATION_METADATA | 
                如需了解详情,请参阅 EuiccManager.OPERATION_METADATA。 | 
OPERATION_EUICC_GSMA | 
                如需了解详情,请参阅 EuiccManager.OPERATION_EUICC_GSMA。 | 
OPERATION_APDU | 
                如需了解详情,请参阅 EuiccManager.OPERATION_APDU。 | 
OPERATION_SMDX_SUBJECT_REASON_CODE | 
                如需了解详情,请参阅 EuiccManager.OPERATION_SMDX_SUBJECT_REASON_CODE。请注意,在这种情况下, 是 EXTRA_EMBEDDED_SUBSCRIPTION_DETAILED_CODE 的最低有效 3 个字节,用于指定主题代码和原因代码,如此处所示。整数的最高有效字节被清零。例如,主题代码为 8.11.1,原因代码为 5.1,在  中以二进制表示为 0000 0000 1000 1011 0001 0000 0101 0001,以十进制表示为 9113681。 | 
              
OPERATION_HTTP | 
                如需了解详情,请参阅 EuiccManager.OPERATION_HTTP。 | 
ErrorCodeDetail
与  对应的错误代码详细信息。errorCode
| 枚举 | |
|---|---|
ERROR_CODE_DETAIL_UNSPECIFIED | 
                未指定错误代码详情。Android Management API 无法识别 。不过,请参阅  | 
              
ERROR_TIME_OUT | 
                如需了解详情,请参阅 EuiccManager.ERROR_TIME_OUT。 | 
ERROR_EUICC_MISSING | 
                如需了解详情,请参阅 EuiccManager.ERROR_EUICC_MISSING。 | 
ERROR_UNSUPPORTED_VERSION | 
                如需了解详情,请参阅 EuiccManager.ERROR_UNSUPPORTED_VERSION。 | 
ERROR_ADDRESS_MISSING | 
                如需了解详情,请参阅 EuiccManager.ERROR_ADDRESS_MISSING。 | 
ERROR_INVALID_CONFIRMATION_CODE | 
                如需了解详情,请参阅 EuiccManager.ERROR_INVALID_CONFIRMATION_CODE。 | 
ERROR_CERTIFICATE_ERROR | 
                如需了解详情,请参阅 EuiccManager.ERROR_CERTIFICATE_ERROR。 | 
ERROR_NO_PROFILES_AVAILABLE | 
                如需了解详情,请参阅 EuiccManager.ERROR_NO_PROFILES_AVAILABLE。 | 
ERROR_CONNECTION_ERROR | 
                如需了解详情,请参阅 EuiccManager.ERROR_CONNECTION_ERROR。 | 
ERROR_INVALID_RESPONSE | 
                如需了解详情,请参阅 EuiccManager.ERROR_INVALID_RESPONSE。 | 
ERROR_CARRIER_LOCKED | 
                如需了解详情,请参阅 EuiccManager.ERROR_CARRIER_LOCKED。 | 
ERROR_DISALLOWED_BY_PPR | 
                如需了解详情,请参阅 EuiccManager.ERROR_DISALLOWED_BY_PPR。 | 
ERROR_INVALID_ACTIVATION_CODE | 
                如需了解详情,请参阅 EuiccManager.ERROR_INVALID_ACTIVATION_CODE。 | 
ERROR_INCOMPATIBLE_CARRIER | 
                如需了解详情,请参阅 EuiccManager.ERROR_INCOMPATIBLE_CARRIER。 | 
ERROR_OPERATION_BUSY | 
                如需了解详情,请参阅 EuiccManager.ERROR_OPERATION_BUSY。 | 
ERROR_INSTALL_PROFILE | 
                如需了解详情,请参阅 EuiccManager.ERROR_INSTALL_PROFILE。 | 
ERROR_EUICC_INSUFFICIENT_MEMORY | 
                如需了解详情,请参阅 EuiccManager.ERROR_EUICC_INSUFFICIENT_MEMORY。 | 
ERROR_INVALID_PORT | 
                如需了解详情,请参阅 EuiccManager.ERROR_INVALID_PORT。 | 
ERROR_SIM_MISSING | 
                如需了解详情,请参阅 EuiccManager.ERROR_SIM_MISSING。 | 
EsimInfo
已添加或移除的 eSIM 卡的详细信息。
| JSON 表示法 | 
|---|
{ "iccId": string }  | 
              
| 字段 | |
|---|---|
iccId | 
                
                   
 仅限输出。eSIM 卡的 ICC ID。  | 
              
RequestDeviceInfoStatus
 命令的状态。REQUEST_DEVICE_INFO
| JSON 表示法 | 
|---|
{ "status": enum (  | 
              
| 字段 | |
|---|---|
status | 
                
                   
 仅限输出。  | 
              
联合字段 device_info。管理员请求的设备信息的详细信息。仅当  为  时,系统才会填充此字段。device_info 只能是下列其中一项: | 
              |
eidInfo | 
                
                   
 与设备的 EID 相关的信息。  | 
              
状态
 命令的状态。REQUEST_DEVICE_INFO
| 枚举 | |
|---|---|
STATUS_UNSPECIFIED | 
                未指定。未使用此值。 | 
SUCCEEDED | 
                设备信息已成功提交。 | 
PENDING_USER_ACTION | 
                用户尚未完成共享设备信息所需的操作。 | 
USER_DECLINED | 
                用户拒绝分享设备信息。 | 
UNSUPPORTED | 
                相应设备不支持所请求的设备信息,例如设备不支持 eSIM 卡。 | 
EidInfo
与设备的 EID 相关的信息。
| JSON 表示法 | 
|---|
{
  "eids": [
    {
      object ( | 
              
| 字段 | |
|---|---|
eids[] | 
                
                   
 仅限输出。每个 eUICC 芯片的 EID 信息。  | 
              
埃德
每个 eUICC 芯片的 EID 信息。
| JSON 表示法 | 
|---|
{ "eid": string }  | 
              
| 字段 | |
|---|---|
eid | 
                
                   
 仅限输出。EID  |