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 기기 정책을 최신 버전으로 업데이트하면 문제가 해결될 수 있습니다.

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 기기가 분실 모드가 아닙니다.