Method: enterprises.devices.issueCommand

기기에 명령어를 실행합니다. 반환된 Operation 리소스는 metadata 필드에 Command를 포함합니다. 가져오기 작업 메서드를 사용하여 명령어 상태를 가져옵니다.

HTTP 요청

POST https://androidmanagement.googleapis.com/v1/{name=enterprises/*/devices/*}:issueCommand

URL은 gRPC 트랜스코딩 구문을 사용합니다.

경로 매개변수

매개변수
name

string

enterprises/{enterpriseId}/devices/{deviceId} 형식의 기기 이름입니다.

요청 본문

요청 본문에는 Command의 인스턴스가 포함됩니다.

응답 본문

성공한 경우 응답 본문에 Operation의 인스턴스가 포함됩니다.

승인 범위

다음 OAuth 범위가 필요합니다.

  • https://www.googleapis.com/auth/androidmanagement

자세한 내용은 OAuth 2.0 개요를 참고하세요.

명령어

명령어

JSON 표현
{
  "type": enum (CommandType),
  "createTime": string,
  "duration": string,
  "userName": string,
  "errorCode": enum (CommandErrorCode),
  "newPassword": string,
  "resetPasswordFlags": [
    enum (ResetPasswordFlag)
  ],

  // Union field params can be only one of the following:
  "clearAppsDataParams": {
    object (ClearAppsDataParams)
  },
  "startLostModeParams": {
    object (StartLostModeParams)
  },
  "stopLostModeParams": {
    object (StopLostModeParams)
  }
  // End of list of possible types for union field params.

  // Union field status can be only one of the following:
  "clearAppsDataStatus": {
    object (ClearAppsDataStatus)
  },
  "startLostModeStatus": {
    object (StartLostModeStatus)
  },
  "stopLostModeStatus": {
    object (StopLostModeStatus)
  }
  // End of list of possible types for union field status.
}
입력란
type

enum (CommandType)

명령어 유형입니다.

createTime

string (Timestamp format)

명령어가 생성된 타임스탬프입니다. 타임스탬프는 서버에서 자동으로 생성됩니다.

RFC3339 UTC 'Zulu' 형식의 타임스탬프입니다(나노초 단위, 소수점 이하 9자리). 예를 들면 "2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"입니다.

duration

string (Duration format)

명령어가 유효한 기간입니다. 이 기간 동안 기기에서 실행되지 않으면 명령어가 만료됩니다. 지정되지 않은 경우 기본 기간은 10분입니다. 최대 기간은 없습니다.

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

userName

string

기기를 소유한 사용자의 리소스 이름(enterprises/{enterpriseId}/users/{userId} 형식)입니다. 이는 명령어가 전송된 기기를 기반으로 서버에서 자동으로 생성됩니다.

errorCode

enum (CommandErrorCode)

명령어가 실패하면 실패를 설명하는 오류 코드입니다. 호출자가 명령어를 취소하는 경우에는 설정되지 않습니다.

newPassword

string

RESET_PASSWORD 유형의 명령어의 경우, 선택적으로 새 비밀번호를 지정합니다. 참고: Android 14 기기의 경우 새 비밀번호는 6자 이상이어야 합니다. 그렇지 않으면 명령어가 INVALID_VALUE와 함께 실패합니다.

resetPasswordFlags[]

enum (ResetPasswordFlag)

RESET_PASSWORD 유형의 명령어의 경우 선택적으로 플래그를 지정합니다.

통합 필드 params. 명령어와 관련된 매개변수입니다. 일부 명령어, 특히 LOCK, RESET_PASSWORD, REBOOT, RELINQUISH_OWNERSHIP는 이를 사용하지 않습니다. 향후 이러한 명령어도 이 명령어를 사용할 수 있습니다.

이 속성을 설정하면 new_passwordreset_password_flags 필드를 설정하면 안 됩니다. params은 다음 중 하나여야 합니다.

clearAppsDataParams

object (ClearAppsDataParams)

지정된 앱의 데이터를 기기에서 삭제하는 CLEAR_APP_DATA 명령어의 매개변수입니다. ClearAppsDataParams 페이지를 참고하세요. 이 속성이 설정되어 있으면 type를 설정하지 않는 것이 좋습니다. 이 경우 서버는 자동으로 CLEAR_APP_DATA로 설정합니다. typeCLEAR_APP_DATA로 명시적으로 설정할 수도 있습니다.

startLostModeParams

object (StartLostModeParams)

기기를 분실 모드로 전환하는 START_LOST_MODE 명령어의 매개변수입니다. StartLostModeParams 페이지를 참고하세요. 이 속성이 설정되어 있으면 type를 설정하지 않는 것이 좋습니다. 이 경우 서버는 자동으로 START_LOST_MODE로 설정합니다. typeSTART_LOST_MODE로 명시적으로 설정할 수도 있습니다.

stopLostModeParams

object (StopLostModeParams)

기기를 분실 모드에서 해제하는 STOP_LOST_MODE 명령어의 매개변수입니다. StopLostModeParams 페이지를 참고하세요. 이 속성이 설정되어 있으면 type를 설정하지 않는 것이 좋습니다. 이 경우 서버는 자동으로 STOP_LOST_MODE로 설정합니다. typeSTOP_LOST_MODE로 명시적으로 설정할 수도 있습니다.

통합 필드 status. 명령어별 상태입니다. 일부 명령어, 특히 LOCK, RESET_PASSWORD, REBOOT, RELINQUISH_OWNERSHIP는 이를 사용하지 않습니다. 향후 이러한 명령어도 이 명령어를 사용할 수 있습니다. status는 다음 중 하나여야 합니다.
clearAppsDataStatus

object (ClearAppsDataStatus)

출력 전용. 지정된 앱의 데이터를 기기에서 삭제하는 CLEAR_APP_DATA 명령어의 상태입니다. ClearAppsDataStatus 페이지를 참고하세요.

startLostModeStatus

object (StartLostModeStatus)

출력 전용. 기기를 분실 모드로 전환하는 START_LOST_MODE 명령어의 상태입니다. StartLostModeStatus 페이지를 참고하세요.

stopLostModeStatus

object (StopLostModeStatus)

출력 전용. 기기를 분실 모드에서 해제하는 STOP_LOST_MODE 명령어의 상태입니다. StopLostModeStatus 페이지를 참고하세요.

CommandType

명령어 유형

열거형
COMMAND_TYPE_UNSPECIFIED 허용되지 않는 값입니다.
LOCK 잠금 화면 자동 잠금 시간이 만료된 것처럼 기기를 잠급니다.
RESET_PASSWORD 사용자의 비밀번호를 재설정합니다.
REBOOT 기기를 재부팅합니다. Android 7.0 (API 수준 24) 이상을 실행하는 완전 관리형 기기에서만 지원됩니다.
RELINQUISH_OWNERSHIP 회사 소유 Android 8.0 이상 기기에서 직장 프로필과 모든 정책을 삭제하여 기기를 개인적인 용도로 사용할 수 있게 합니다. 개인 프로필과 연결된 앱 및 데이터는 유지됩니다. 기기가 명령어를 확인하면 서버에서 삭제됩니다.
CLEAR_APP_DATA 지정된 앱의 애플리케이션 데이터를 지웁니다. 이 기능은 Android 9 이상에서 지원됩니다. 애플리케이션은 애플리케이션 데이터 외부에 데이터를 저장할 수 있습니다(예: 외부 저장소 또는 사용자 사전에). clearAppsDataParams을 참고하세요.
START_LOST_MODE 기기를 분실 모드로 전환합니다. 완전 관리형 기기 또는 관리 프로필이 있는 조직 소유 기기에서만 지원됩니다. startLostModeParams을 참고하세요.
STOP_LOST_MODE 기기를 분실 모드에서 해제합니다. 완전 관리형 기기 또는 관리 프로필이 있는 조직 소유 기기에서만 지원됩니다. stopLostModeParams을 참고하세요.

CommandErrorCode

명령어 오류 코드입니다. 서버에서 채우는 읽기 전용 입력란입니다.

열거형
COMMAND_ERROR_CODE_UNSPECIFIED 오류가 발생하지 않았습니다.
UNKNOWN 알 수 없는 오류가 발생했습니다.
API_LEVEL 기기의 API 수준은 이 명령어를 지원하지 않습니다.
MANAGEMENT_MODE 관리 모드 (프로필 소유자, 기기 소유자 등)에서 이 명령어를 지원하지 않습니다.
INVALID_VALUE 명령어에 잘못된 매개변수 값이 있습니다.
UNSUPPORTED 기기에서 명령어를 지원하지 않습니다. Android Device Policy를 최신 버전으로 업데이트하면 문제가 해결될 수도 있습니다.

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[]

string

명령어를 실행하면 데이터가 지워질 앱의 패키지 이름입니다.

StartLostModeParams

기기를 분실 모드로 전환하기 위한 START_LOST_MODE 명령어와 연결된 매개변수입니다. 기기를 분실 모드로 전환하려면 조직 이름을 제외한 매개변수를 하나 이상 제공해야 합니다.

JSON 표현
{
  "lostMessage": {
    object (UserFacingMessage)
  },
  "lostPhoneNumber": {
    object (UserFacingMessage)
  },
  "lostEmailAddress": string,
  "lostStreetAddress": {
    object (UserFacingMessage)
  },
  "lostOrganization": {
    object (UserFacingMessage)
  }
}
입력란
lostMessage

object (UserFacingMessage)

기기가 분실 모드일 때 사용자에게 표시되는 메시지입니다.

lostPhoneNumber

object (UserFacingMessage)

기기가 분실 모드일 때 통화 소유자 버튼을 탭했을 때 전화가 걸리는 전화번호입니다.

lostEmailAddress

string

기기가 분실 모드일 때 사용자에게 표시되는 이메일 주소입니다.

lostStreetAddress

object (UserFacingMessage)

기기가 분실 모드일 때 사용자에게 표시되는 상세 주소입니다.

lostOrganization

object (UserFacingMessage)

기기가 분실 모드일 때 사용자에게 표시되는 조직 이름입니다.

StopLostModeParams

이 유형에는 필드가 없습니다.

기기를 분실 모드에서 해제하는 STOP_LOST_MODE 명령어와 연결된 매개변수입니다.

ClearAppsDataStatus

지정된 앱의 데이터를 기기에서 삭제하는 CLEAR_APP_DATA 명령어의 상태입니다.

JSON 표현
{
  "results": {
    string: {
      object (PerAppResult)
    },
    ...
  }
}
입력란
results

map (key: string, value: object (PerAppResult))

앱별 결과로서 패키지 이름과 각 삭제 결과에 매핑한 것입니다.

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }

PerAppResult

단일 앱의 데이터를 지우려고 시도한 경우

JSON 표현
{
  "clearingResult": enum (ClearingResult)
}
입력란
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)
}
입력란
status

enum (Status)

상태입니다. StartLostModeStatus 페이지를 참고하세요.

상태

상태입니다. StartLostModeStatus 페이지를 참고하세요.

열거형
STATUS_UNSPECIFIED 지정되지 않았습니다. 이 값은 사용되지 않습니다.
SUCCESS 기기가 분실 모드로 전환되었습니다.
RESET_PASSWORD_RECENTLY 관리자가 최근에 기기의 비밀번호를 재설정했기 때문에 기기를 분실 모드로 전환할 수 없습니다.
USER_EXIT_LOST_MODE_RECENTLY 사용자가 최근에 분실 모드를 종료했으므로 기기를 분실 모드로 전환할 수 없습니다.
ALREADY_IN_LOST_MODE 기기가 이미 분실 모드입니다.

StopLostModeStatus

기기를 분실 모드에서 해제하는 STOP_LOST_MODE 명령어의 상태입니다.

JSON 표현
{
  "status": enum (Status)
}
입력란
status

enum (Status)

상태입니다. StopLostModeStatus 페이지를 참고하세요.

상태

상태입니다. StopLostModeStatus 페이지를 참고하세요.

열거형
STATUS_UNSPECIFIED 지정되지 않았습니다. 이 값은 사용되지 않습니다.
SUCCESS 기기의 분실 모드가 해제되었습니다.
NOT_IN_LOST_MODE 기기가 분실 모드가 아닙니다.