기업용으로 설계된 일부 앱에는 관리형 인스턴스라는 기본 제공 설정이 포함되어 있습니다. IT 관리자가 원격으로 구성할 수 있는 구성을 제공합니다. 예를 들어, 앱이 기기가 Wi-Fi에 연결된 경우에만 데이터를 동기화하는 옵션이 있습니다. 제공 중 IT 관리자는 관리 구성을 지정하고 기기는 모든 솔루션 세트의 요구사항입니다.
아래 다이어그램은 관리 구성의 일부 주요 단계를 보여줍니다. Google Play EMM을 통해 사용할 수 있는 옵션 개요가 포함된 관리 API에 액세스할 수 있습니다.
앱이 관리 구성을 지원하는지 확인
사용
Products.getAppRestrictionsSchema 드림
앱에서 관리 구성을 지원하는지 확인합니다. 예를 들면 다음과 같습니다.
는
Java용 Google Play EMM API 클라이언트 라이브러리.
public AppRestrictionsSchema getAppRestrictionsSchema(String enterpriseId,
    String productId, String language) throws IOException {
  return androidEnterprise
     .product()
     .getAppRestrictionsSchema(enterpriseId, productId, language)
     .execute();
}
모든 앱은 앱 제한 (관리 구성) 스키마를 반환합니다. 통화
빈 스키마를 반환하면 앱이 구성 관리를 지원하지 않습니다. 만약
호출이 제한 집합이 포함된 스키마를 반환한 다음 앱이
관리 구성을 지원합니다 예를 들어
VPN을 통한 원격 인쇄를 활성화하면 다음과 같은 응답이 반환될 수 있습니다.
Products.getAppRestrictionsSchema
    {
      "kind": "androidenterprise#appRestrictionsSchema",
      "restrictions": [
        {
          "key": "printing_enabled",
          "title": "Enable printing",
          "restrictionType": "bool",
          "description": "Allow user to print from the app",
          "defaultValue": {
            "type": "bool",
            "valueBool": true,
          }
        },
        {
          "key": "vpn_configurations",
          "title": "VPN configurations",
          "restrictionType": "bundle_array",
          "description": "List of VPN configurations",
          "nestedRestriction": [
            {
              "key": "vpn_configuration",
              "title": "VPN configuration",
              "restrictionType": "bundle",
              "nestedRestrictions": [
                {
                  "key": "server",
                  "title": "VPN server host",
                  "restrictionType": "string"
                },
                {
                  "key": "username",
                  "title": "VPN account username",
                  "restrictionType": "string"
                }
              ]
            }
          ]
        }
      ]
    }
관리 구성 지정
관리 구성을 지원하는 앱의 경우 IT 관리자가 다음을 설정하도록 허용할 수 있습니다. 관리 구성 iframe을 삽입하거나 자체 UI를 개발할 수 있습니다.
옵션 1: 관리 구성 iframe 삽입
관리 구성을 지원하는 가장 쉬운 방법은 구성 iframe으로 이동합니다. iframe은 관리형 구성 스키마를 정의하고 IT 관리자는 이를 통해 커스텀 구성 프로필을 삭제할 수 있습니다 Play EMM API를 사용하여 사용자 기기에 맞춤 프로필을 설정할 수 있습니다. iframe 및 iframe 추가 방법에 대해 자세히 알아보려면 콘솔에 추가하고 관리 구성 iframe
옵션 2: 자체 UI 만들기
Products.getAppRestrictionsSchema에서 반환된 구성을 사용하여
IT 관리자가 앱 구성을 관리할 수 있는 자체 UI를 만들 수 있습니다.
관리 구성 적용
관리 구성을 기기에 적용하려면 DPC를 통합해야 합니다. DPC 지원 라이브러리 사용(기기 정책 빌드 참조) 컨트롤러입니다. DPC 지원 라이브러리 Google Play에 위임을 투명하게 처리하여 관리 기능을 구성할 수 있습니다
다음을 설정하여 관리 구성을 기기에 적용할 수 있습니다.
policy.productPolicy.managedConfiguration
Device님의 policy
mcmId 사용
IT 관리자가 관리 콘솔에서 새 구성 프로필을 저장할 때마다
구성 iframe이면 iframe에서 mcmId라는 고유 식별자를 반환합니다. 
mcmId에는 적용할 수 있는 기기 수에 제한이 없으며
만료 시간이 없습니다
구성 프로필을 기기에 적용하려면 다음을 설정하세요.
policy.productPolicy.managedConfiguration.configurationVariables.mcmId
Device님의 policy
IT 관리자가 관리 콘솔에서 변수를 사용하도록 허용하려는 경우
구성 iframe (예: $FirstName, $LastName)을 사용하려면
프로필에 포함된 변수들을
policy.productPolicy[].managedConfiguration.configurationVariables.mcmId.variableSet[]
관리 속성 목록 사용
또한 다음을 설정하여 관리 속성 집합을 포함할 수 있습니다.
policy.productPolicy.managedConfiguration.managedProperty[]
Device님의 policy
아래 예는 구성을 정의하는 방법을 보여줍니다. 이 구성
두 개의 번들 속성(bundle_array
관련 속성 그룹(이 경우 VPN 속성)입니다.
    ManagedConfiguration managedConfiguration = new ManagedConfiguration()
      .setManagedProperty(
        ImmutableList.of(
            new ManagedProperty()
                .setKey("printing_enabled")
                .setValueBool(true),
            new ManagedProperty()
                .setKey("vpn_configurations")
                .setValueBundleArray(
                    ImmutableList.of(
                        new ManagedPropertyBundle().setManagedProperty(
                            ImmutableList.of(
                                new ManagedProperty()
                                    .setKey("server")
                                    .setValueString("vpn1.example.com"),
                                new ManagedProperty()
                                    .setKey("username")
                                    .setValueString("john.doe"))),
                        new ManagedPropertyBundle().setManagedProperty(
                            ImmutableList.of(
                                new ManagedProperty()
                                    .setKey("server")
                                    .setValueString("vpn2.example.com"),
                                new ManagedProperty()
                                    .setKey("username")
                                    .setValueString("jane.doe")))))));
앱이 사용할 수 있는 다양한 구성 속성에 관한 자세한 내용은 자세한 내용은 관리형 관리형 서비스의 구성을 참조하세요.
앱의 구성 프로필 나열
솔루션을 설계하는 방법에 따라 목록,
저장된 구성 프로필을 볼 수 있습니다. 이 목록을 가져오려면 다음을 호출합니다.
Managedconfigurationssettings.list