Devices

이 리소스에 대한 메소드 목록은 이 페이지의 하단에 나와 있습니다.

리소스 표현

기기 리소스는 EMM에서 관리하고 특정 엔터프라이즈 사용자에게 속한 휴대기기를 나타냅니다.

{
  "kind": "androidenterprise#device",
  "androidId": string,
  "managementType": string,
  "policy": {
    "autoUpdatePolicy": string,
    "productAvailabilityPolicy": string,
    "productPolicy": [
      {
        "productId": string,
        "tracks": [
          string
        ],
        "trackIds": [
          string
        ],
        "managedConfiguration": {
          "kind": string,
          "productId": string,
          "managedProperty": [
            {
              "key": string,
              "valueBool": boolean,
              "valueInteger": integer,
              "valueString": string,
              "valueStringArray": [
                string
              ],
              "valueBundle": {
                "managedProperty": [
                  (ManagedProperty)
                ]
              },
              "valueBundleArray": [
                {
                  "managedProperty": [
                    (ManagedProperty)
                  ]
                }
              ]
            }
          ],
          "configurationVariables": {
            "kind": "androidenterprise#configurationVariables",
            "mcmId": string,
            "variableSet": [
              {
                "kind": "androidenterprise#variableSet",
                "placeholder": string,
                "userValue": string
              }
            ]
          }
        },
        "autoInstallPolicy": {
          "autoInstallMode": string,
          "autoInstallPriority": integer,
          "autoInstallConstraint": [
            {
              "networkTypeConstraint": string,
              "chargingStateConstraint": string,
              "deviceIdleStateConstraint": string
            }
          ],
          "minimumVersionCode": integer
        },
        "autoUpdateMode": string,
        "enterpriseAuthenticationAppLinkConfigs": [
          {
            "uri": string
          }
        ]
      }
    ],
    "maintenanceWindow": {
      "startTimeAfterMidnightMs": long,
      "durationMs": long
    },
    "deviceReportPolicy": string,
    "policyId": string
  },
  "report": {
    "lastUpdatedTimestampMillis": long,
    "appState": [
      {
        "packageName": string,
        "keyedAppState": [
          {
            "key": string,
            "stateTimestampMillis": long,
            "severity": string,
            "message": string,
            "data": string
          }
        ]
      }
    ]
  },
  "latestBuildFingerprint": string,
  "sdkVersion": integer,
  "maker": string,
  "model": string,
  "device": string,
  "product": string,
  "retailBrand": string
}
속성 이름 설명 참고
androidId string 기기의 Google Play 서비스 Android ID로, 소문자 16진수 문자열로 인코딩됩니다. 예를 들면 "123456789abcdef0"입니다.
device string 기기의 내부 하드웨어 코드명입니다. android.os.Build.DEVICE에서 가져옵니다. (logs/wireless/android/android_checkin.proto에 따라 'device'라는 필드 이름)
kind string
latestBuildFingerprint string 기기의 빌드 지문(알려진 경우)
maker string 기기 제조업체입니다. android.os.Build.MANUFACTURER에서 가져옵니다.
managementType string 다양한 배포 구성에서 관리 Google Play EMM이 기기를 제어하는 정도를 식별합니다.

가능한 값은 다음과 같습니다.
  • 'managedDevice': EMM의 기기 정책 컨트롤러 (DPC)가 기기 소유자인 기기입니다.
  • 'managedProfile': DPC에서 관리하는 프로필 (DPC가 프로필 소유자)과 DPC에서 사용할 수 없는 별도의 개인 프로필이 있는 기기입니다.
  • 'containerApp': 더 이상 사용되지 않음 (지원 중단됨).
  • 'unmanagedProfile': 관리 콘솔을 사용하여 권한을 사용 설정하는 방식으로 도메인 관리자가 관리 Google Play를 사용하도록 허용했지만 프로필 자체는 DPC가 소유하지 않은 기기입니다.


허용되는 값은 다음과 같습니다.
  • "containerApp"
  • "managedDevice"
  • "managedProfile"
  • "unmanagedProfile"
model string 기기의 모델 이름입니다. android.os.Build.MODEL에서 가져옵니다.
policy nested object 기기에 적용된 정책입니다.
policy.autoUpdatePolicy string 기기에서 자동 앱 업데이트를 적용할 수 있는 시기를 제어합니다.

권장 대안: 앱별로 설정되는 autoUpdateMode는 업데이트 빈도에 관한 유연성을 더 높여 줍니다.

autoUpdateModeAUTO_UPDATE_POSTPONED 또는 AUTO_UPDATE_HIGH_PRIORITY로 설정된 경우 autoUpdatePolicy는 영향을 미치지 않습니다.
  • choiceToTheUser를 사용하면 기기의 사용자가 앱 업데이트 정책을 구성할 수 있습니다.
  • always은 자동 업데이트를 사용 설정합니다.
  • never: 자동 업데이트를 사용 중지합니다.
  • wifiOnly: 기기가 Wi-Fi에 연결되어 있을 때만 자동 업데이트를 사용 설정합니다.


허용되는 값은 다음과 같습니다.
  • "always"
  • "choiceToTheUser"
  • "never"
  • "wifiOnly"
policy.deviceReportPolicy string 기기가 EMM에 앱 상태를 보고하는지 여부입니다. 기본값은 'deviceReportDisabled'입니다.

허용되는 값은 다음과 같습니다.
  • "deviceReportDisabled"
  • "deviceReportEnabled"
policy.maintenanceWindow nested object 포그라운드에서 실행 중인 앱을 업데이트해야 하는 시점을 정의하는 유지보수 기간입니다.
policy.maintenanceWindow.durationMs long 유지보수 기간(밀리초)입니다. 기간은 30분에서 24시간 (양 끝값 포함) 사이여야 합니다.
policy.maintenanceWindow.startTimeAfterMidnightMs long 기기의 자정 이후 밀리초 단위로 나타낸 유지보수 기간의 시작 시간입니다. 기간은 자정을 넘을 수 있습니다.
policy.policyId string Play 스토어에서 전송된 앱 설치 의견과 함께 전달되는 정책의 식별자입니다.
policy.productAvailabilityPolicy string 지정된 제품에 대해 기기에 부여된 사용 가능 여부입니다. 'all'은 승인 상태와 관계없이 기기에 모든 제품에 대한 액세스 권한을 부여합니다. 'all'은 'alpha' 또는 'beta' 트랙의 자동 공개 상태를 사용 설정하지 않습니다. 'whitelist'는 기기에 productPolicy[]에 지정된 제품에 대한 액세스 권한을 부여합니다. 승인된 제품 또는 이전에 기업에서 승인한 제품 (승인이 취소된 제품)만 허용 목록에 추가할 수 있습니다. 값을 제공하지 않으면 사용자 수준에서 설정된 사용 가능 여부가 기본적으로 적용됩니다.

허용되는 값은 다음과 같습니다.
  • "all"
  • "whitelist"
policy.productPolicy[] list 제품 정책 목록입니다. 제품 정책을 적용하려면 productAvailabilityPolicyWHITELIST 또는 ALL로 설정해야 합니다.
policy.productPolicy[].autoInstallPolicy nested object 제품의 자동 설치 정책입니다.
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[] list 앱 자동 설치의 제약조건입니다. 제약조건은 최대 1개까지 지정할 수 있습니다.

policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].chargingStateConstraint string 충전 상태 제약 조건

허용되는 값은 다음과 같습니다.
  • "chargingNotRequired"
  • "chargingRequired"
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].deviceIdleStateConstraint string 기기 유휴 상태 제약 조건

허용되는 값은 다음과 같습니다.
  • "deviceIdleNotRequired"
  • "deviceIdleRequired"
policy.productPolicy[].autoInstallPolicy.autoInstallConstraint[].networkTypeConstraint string 네트워크 유형 제약조건

허용되는 값은 다음과 같습니다.
  • "anyNetwork"
  • "unmeteredNetwork"
policy.productPolicy[].autoInstallPolicy.autoInstallMode string 자동 설치 모드 설정하지 않으면 기본값은 'doNotAutoInstall'입니다. 설정된 유지보수 기간과 관계없이 앱이 자동으로 설치됩니다.

허용되는 값은 다음과 같습니다.
  • "autoInstallOnce"
  • "doNotAutoInstall"
  • "forceAutoInstall"
policy.productPolicy[].autoInstallPolicy.autoInstallPriority integer 설치의 우선순위입니다(서명되지 않은 정수). 숫자가 작을수록 우선순위가 높습니다.
policy.productPolicy[].autoInstallPolicy.minimumVersionCode integer 앱의 최소 버전입니다. 낮은 버전의 앱이 설치된 경우 일반 자동 업데이트를 기다리는 대신 자동 설치 제약 조건에 따라 앱이 자동 업데이트됩니다. 기기당 최대 20개의 앱에 최소 버전 코드를 설정할 수 있습니다.
policy.productPolicy[].autoUpdateMode string 제품의 자동 업데이트 모드입니다. autoUpdateMode가 사용되면 항상 사용자의 선택보다 우선 적용됩니다. 따라서 사용자가 기기 설정을 수동으로 변경하면 이러한 변경사항은 무시됩니다.

허용되는 값은 다음과 같습니다.
  • "autoUpdateDefault"
  • "autoUpdateHighPriority"
  • "autoUpdatePostponed"
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[] list ID 공급업체의 인증자 앱에 대한 인증 URL 구성입니다. 이렇게 하면 Android WebView를 사용하는 비공개 앱에서 인증이 진행되는 동안 ID 공급업체의 인증 앱을 실행하는 데 도움이 됩니다. 인증자 앱은 이미 기기의 인증 URL에 대한 기본 핸들러여야 합니다.
policy.productPolicy[].enterpriseAuthenticationAppLinkConfigs[].uri string 인증 URL입니다.
policy.productPolicy[].managedConfiguration nested object 제품의 관리 구성입니다.
policy.productPolicy[].managedConfiguration.configurationVariables nested object 관리형 구성 프로필의 ID와 사용자에 대해 정의된 구성 변수 집합 (있는 경우)을 포함합니다.
policy.productPolicy[].managedConfiguration.configurationVariables.kind string
policy.productPolicy[].managedConfiguration.configurationVariables.mcmId string 관리 구성 설정의 ID입니다.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[] list 사용자에게 기여도가 부여된 변수 세트입니다.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].kind string
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].placeholder string 자리표시자 문자열로, EMM에서 정의합니다.
policy.productPolicy[].managedConfiguration.configurationVariables.variableSet[].userValue string 사용자별 자리표시자 값입니다.
policy.productPolicy[].managedConfiguration.kind string 지원 중단됨.

policy.productPolicy[].managedConfiguration.managedProperty[] list 이 구성의 관리 속성 집합입니다.
policy.productPolicy[].managedConfiguration.managedProperty[].key string 숙박 시설을 식별하는 고유 키입니다.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBool boolean 불리언 값 - 속성 유형이 불리언인 경우에만 표시됩니다.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle nested object 관리 속성의 번들입니다. 속성 유형이 번들인 경우에만 표시됩니다.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundle.managedProperty[] list 관리 속성 목록입니다.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[] list 속성 번들의 목록입니다. 속성 유형이 bundle_array인 경우에만 표시됩니다.
policy.productPolicy[].managedConfiguration.managedProperty[].valueBundleArray[].managedProperty[] list 관리형 속성 목록입니다.
policy.productPolicy[].managedConfiguration.managedProperty[].valueInteger integer 정수 값 - 속성 유형이 정수인 경우에만 표시됩니다.
policy.productPolicy[].managedConfiguration.managedProperty[].valueString string 문자열 값 - 속성 유형이 문자열, 선택사항 또는 숨겨진 경우만 표시됩니다.
policy.productPolicy[].managedConfiguration.managedProperty[].valueStringArray[] list 문자열 값 목록입니다. 속성 유형이 멀티셀렉트인 경우에만 표시됩니다.
policy.productPolicy[].managedConfiguration.productId string 관리 구성이 적용되는 제품의 ID입니다(예: 'app:com.google.android.gm').
policy.productPolicy[].productId string 제품의 ID입니다. 예를 들면 "app:com.google.android.gm"입니다.
policy.productPolicy[].trackIds[] list trackIds로 식별되는 지정된 제품 출시 트랙에 기기 공개 상태를 부여합니다. 제품의 발표 트랙 목록은 Products.Get을 호출하여 가져올 수 있습니다.
policy.productPolicy[].tracks[] list 지원 중단되었습니다. 대신 trackIds를 사용하세요.
product string 기기의 제품 이름입니다. android.os.Build.PRODUCT에서 가져옵니다.
report nested object 최신 앱 상태로 업데이트된 기기 보고서
report.appState[] list 기기의 관리 앱에서 설정한 앱 상태 목록입니다. 앱 상태는 앱 개발자가 정의합니다. 이 필드는 항상 표시됩니다.
report.appState[].keyedAppState[] list 키가 지정된 앱 상태 목록입니다. 이 필드는 항상 표시됩니다.
report.appState[].keyedAppState[].data string 머신에서 읽을 수 있는 데이터를 위한 추가 필드입니다. 예를 들어 숫자 또는 JSON 객체가 될 수 있습니다. XSS를 방지하려면 데이터를 표시하기 전에 데이터에서 HTML을 삭제하는 것이 좋습니다.
report.appState[].keyedAppState[].key string 앱이 상태를 제공하는 항목을 나타내는 키입니다. 키의 콘텐츠는 앱 개발자가 설정합니다. XSS를 방지하려면 키를 표시하기 전에 키에서 HTML을 모두 삭제하는 것이 좋습니다. 이 필드는 항상 표시됩니다.
report.appState[].keyedAppState[].message string 앱 상태를 설명하는 인간이 읽을 수 있는 자유 형식 메시지입니다. 예를 들어 오류 메시지 XSS를 방지하려면 메시지를 표시하기 전에 메시지에서 HTML을 삭제하는 것이 좋습니다.
report.appState[].keyedAppState[].severity string 앱 상태의 심각도입니다. 이 필드는 항상 표시됩니다.

허용되는 값은 다음과 같습니다.
  • "severityError"
  • "severityInfo"
report.appState[].keyedAppState[].stateTimestampMillis long 앱이 상태를 설정한 타임스탬프(에포크 이후 밀리초)입니다. 이 필드는 항상 표시됩니다.
report.appState[].packageName string 앱의 패키지 이름입니다. 이 필드는 항상 존재합니다.
report.lastUpdatedTimestampMillis long 마지막 보고서 업데이트의 타임스탬프(에포크 이후 밀리초)입니다. 이 필드는 항상 표시됩니다.
retailBrand string 기기의 소매 브랜드입니다(설정된 경우). android.os.Build.BRAND 참조
sdkVersion integer API 호환성 버전입니다.

메서드

forceReportUpload
마지막 보고서가 생성된 이후 기기의 앱 상태 변경사항이 포함된 보고서를 업로드합니다. 특정 기기의 경우 24시간마다 최대 3번 이 메서드를 호출할 수 있습니다.
get
기기의 세부정보를 가져옵니다.
getState
기기의 Google 서비스 액세스가 사용 설정되어 있는지 또는 사용 중지되어 있는지 검색합니다. 기기 상태는 Google 관리 콘솔에서 Android 기기에 EMM 정책 시행을 사용 설정한 경우에만 적용됩니다. 그렇지 않으면 기기 상태가 무시되고 모든 기기가 Google 서비스에 액세스할 수 있습니다. Google에서 관리하는 사용자에게만 지원됩니다.
list
사용자의 모든 기기의 ID를 검색합니다.
setState
기기의 Google 서비스 액세스 권한이 사용 설정되어 있는지 또는 사용 중지되어 있는지 설정합니다. 기기 상태는 Google 관리 콘솔에서 Android 기기에 EMM 정책 시행을 사용 설정한 경우에만 적용됩니다. 그렇지 않으면 기기 상태가 무시되고 모든 기기가 Google 서비스에 액세스할 수 있습니다. Google에서 관리하는 사용자에게만 지원됩니다.
업데이트
기기 정책을 업데이트합니다.

정책이 제대로 적용되도록 하려면 Google Play 패키지의 관리 구성에서 allowed_accounts를 설정하여 관리되지 않는 계정이 Google Play에 액세스하지 못하도록 해야 합니다. Google Play에서 계정 제한을 참고하세요.