Yönetilen yapılandırmalar iframe'i

Yönetilen yapılandırma iframe'i, BT yöneticilerinin bir uygulamanın yönetilen yapılandırma ayarlarını kaydetme, düzenleme ve silme. Her bir görev için örneğin, bir uygulamanın ayrıntılarında düğme (veya benzer bir kullanıcı arayüzü öğesi) gösterebilir ya da iframe'i açan ayarlar sayfası.

BT yöneticilerinin iFrame'den kullanabileceği işlemler

mcm iframe
Şekil 1. Gmail için yönetilen yapılandırma iframe'i örneği.

Yapılandırma profillerini ayarlama ve kaydetme

iframe, bir öğenin yönetilen yapılandırma şemasını alıp belirtilen uygulama. BT yöneticisi, iFrame içinde yapılandırmaları ayarlayabilir ve yapılandırma profili olarak kullanabilirsiniz. Bir BT yöneticisi yeni bir yapılandırma profilinde yer alıyorsa iframe, mcmId adlı benzersiz bir tanımlayıcı döndürür. Bu sayede BT yöneticileri aynı profil için birden fazla profil oluşturabilir uygulamasını indirin.

Yapılandırma profillerini düzenle

iframe, kayıtlı yapılandırma profillerini görüntüleyebilir. BT yöneticileri şunları yapabilir: profildeki ayarları güncelleyebilir ve değişikliklerini kaydedebilir.

Yapılandırma profillerini silin

BT yöneticileri yapılandırma profillerini iFrame'den silebilir. Bu özellik varsayılan olarak devre dışıdır.

Yönetilen yapılandırma iframe'ini konsolunuzda gösterme

Web jetonu oluşturun

Kuruluşu tanımlayan bir web jetonu oluşturmak için Enterprises.createWebToken aracını kullanın. Lütfen diğer parametrelerle birlikte, konsolu. Aşağıdaki örnekte, Google Java için Play EMM API İstemci Kitaplığı

public AdministratorWebToken getAdministratorWebToken(
    String enterpriseId,
    AdministratorWebTokenSpec tokenSpec) throws IOException {
  return androidEnterprise
     .enterprise()
     .createWebToken(enterpriseId, tokenSpec)
     .execute();
}

iframe'i oluşturma

Aşağıda, yönetilen yapılandırma iframe'inin nasıl oluşturulacağına ilişkin bir örnek verilmiştir:

<script src="https://apis.google.com/js/api.js"></script>
<div id="container" style="width: 1000px; height: 1000px"></div>
<script>
  gapi.load('gapi.iframes', function() {
    var options = {
      'url': 'https://play.google.com/managed/mcm?token=web_token&packageName=app_package_name',
      'where': document.getElementById('container'),
      'attributes': { style: 'height:1000px', scrolling: 'yes'}
    }

    var iframe = gapi.iframes.getContext().openChild(options);
  });
</script>

URL parametreleri

Aşağıdaki tabloda iframe URL'si için kullanılabilen tüm parametreler listelenmiştir.

ParametreZorunluAçıklama
token Evet Enterprises.createWebToken öğesinden döndürülen jeton.
packageName Evet Uygulamanın ürün kimliği. Örneğin, com.google.android.gm
mcmId Hayır Yönetilen bir yapılandırma profilinin kimliği.
canDelete Hayır TRUE (DOĞRU) ise iframe'de BT'ye izin veren bir düğmeyi etkinleştirir. yönetilen yapılandırmalar profilini silmesine izin verir. Eğer FALSE (varsayılan değer) ise düğme devre dışıdır.
locale Hayır İyi oluşturulmuş BCP 47 language etiketi bir dildir. Değilse belirtilen değer en_US'dir.

iFrame etkinlikleri

Ayrıca, entegrasyonunuzun bir parçası olarak aşağıdaki etkinlikleri de gerçekleştirmeniz gerekir.

EtkinlikAçıklama
onconfigupdated Kullanıcı, mevcut bir yönetilen yapılandırma profilini günceller veya yeni bir profil oluşturur bir. Bu komut, şunu içeren bir nesne döndürür:
{
  "mcmId": The ID of the managed configurations profile.
  "name": The name of the updated or newly created managed configurations profile.
}
onconfigdeleted Kullanıcı, mevcut bir yönetilen yapılandırma profilini siler. Şunu döndürür: Şunları içeren bir nesne:
{
  "mcmId": The ID of the managed configurations profile.
}

Aşağıdaki örnekte onconfigupdated, örnek olarak nasıl dinleneceği gösterilmektedir:

iframe.register('onconfigupdated', function(event) {
  console.log(event);
}, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);

Bir uygulamanın yönetilen yapılandırmalar şemasında yapılan güncellemeler

Geliştirici bir uygulamanın yönetilen yapılandırma şemasını güncellerse, yapılandırma profilleri otomatik olarak güncellenir. Örneğin, geliştirici bir seçeneği kaldırırsa, bu seçenek mevcut tüm yapılandırmalardan kaldırılır. profil oluşturabilirsiniz. Geliştirici bir seçenek eklerse, seçeneği (geliştirici tarafından tanımlanır), mevcut tüm yapılandırmalara eklenir profil oluşturabilirsiniz.

Yönetilen yapılandırmaları kullanıcılara uygula cihazlar

Yönetilen yapılandırmaları kullanıcıların cihazlarına nasıl uygulayacağınızı öğrenmek için cihazlar için Yönetilen yapılandırmaları uygulayın.


Seçme/seçim kaldırma davranışını anlama

Yönetilen yapılandırmalar iframe'i artık BT yöneticilerinin yönetilen bir yapılandırmanın uygulama kısıtlamalarına ihtiyaç duymadıkları zaman. Bu önceki davranışlardan kaynaklanan bir değişikliktir ve kısıtlamaların yöneticinin seçimine göre uygulamanıza gönderilir.

Aşağıdaki bölümde, yönetilen yapılandırma iframe'lerinin geliştiricilerin, bu yeni modelin bir parçası olarak yapılandırmalarına yardımcı olur.

Bir uygulama kısıtlaması için varsayılan değer kullanılıyor

Uygulama, bool türünde kısıtlamalara sahipse seçim, tamsayı, çoklu seçim veya dize bir varsayılan değer girildiğinde, varsayılan değer yöneticiler yönetilen yapılandırmayı yüklemeden kaydettiğinde uygulama kısıtlamasının değerini o uygulama kısıtlamasında herhangi bir değişiklik yapıldığından emin olun.

Örneğin, aşağıdaki uygulama kısıtlama şemasıyla:

"restrictions": [{
    "key": "bool_key",
    "restrictionType": "bool",
    "defaultValue": {
        "type": "bool",
        "valueBool": false
    }
}]

Cihaza gönderilen uygulama kısıtlamaları:

"restrictions": [{
    "key": "bool_key",
    "restrictionType": "bool",
    "value": {
        "type": "bool",
        "valueBool": false
    }
}]

Uygulama kısıtlamaları için varsayılan değerleri kullanmadan

Uygulama, bool türünde kısıtlamalara sahipse seçim, tamsayı, çoklu seçim veya dize bir varsayılan değerle sağlanmazsa, bu uygulama kısıtlamaları yöneticiler herhangi bir değişiklik yapmadan yönetilen yapılandırmayı kaydettiğinde dahil edilir kısıtlamaya tabi tutmalısınız.

Örneğin, aşağıdaki uygulama kısıtlama şemasıyla:

"restrictions": [{
    "key": "bool_key",
    "restrictionType": "bool"
    // defaultValue absent.
}]

Cihaza gönderilen uygulama kısıtlamaları:

"restrictions": [
    // Empty
]

Şemanızda paketleri kullanma

Bu bölüm paket için geçerlidir uygulama kısıtlamaları:

Paket uygulaması kısıtlamasında, varsayılan değere sahip en az bir alt uygulama kısıtlamasının bulunması

Pakette bool türündeki alt uygulama kısıtlamalarından en az birini uygulama kısıtlaması, seçim, tam sayı, çoklu seçim veya dize bir varsayılan değer girildiğinde, varsayılan değer uygulama kısıtlamasının değerini ve varsayılan değeri olmayanlar hariç tutulur yöneticiler, herhangi bir değişiklik yapmadan yönetilen yapılandırmayı kaydettiğinde uygulama kısıtlaması.

"restrictions": [{
    "key": "bundle_key",
    "restrictionType": "bundle",
    "nestedRestriction": [{
            "key": "bool_key_1",
            "restrictionType": "bool",
            "defaultValue": {
                "type": "bool",
                "valueBool": false
            }
        },
        {
            "key": "bool_key_2",
            "restrictionType": "bool"
            // defaultValue absent.
        }
    ]
}]

Cihaza gönderilen uygulama kısıtlamaları:

"restrictions": [{
    "key": "bundle_key",
    "restrictionType": "bundle",
    "nestedRestriction": [{
            "key": "bool_key_1",
            "restrictionType": "bool",
            "value": {
                "type": "bool",
                "valueBool": false
            }
        },
        // The bool_key_2 child app restriction is not included.
    ]
}]

Varsayılan değer içermeyen tüm çocuk uygulama kısıtlamaları

Pakette uygulama kısıtlaması, bool türündeki tüm alt uygulama kısıtlamalarını kapsar. seçim, tam sayı, çoklu seçim veya dize varsayılan bir değerle sağlanmaz: paket yöneticiler yönetilen yapılandırmayı kaydettiğinde uygulama kısıtlaması dahil edilmez o uygulama kısıtlamasında herhangi bir değişiklik yapmadan yapabilirsiniz.

Örneğin, aşağıdaki uygulama kısıtlama şemasıyla:

"restrictions": [{
    "key": "bundle_key",
    "restrictionType": "bundle",
    "nestedRestriction": [{
            "key": "bool_key_1",
            "restrictionType": "bool",
            // defaultValue absent.
        },
        {
            "key": "bool_key_2",
            "restrictionType": "bool"
            // defaultValue absent.
        }
    ]
}]

Cihaza gönderilen uygulama kısıtlamaları:

"restrictions": [
    // Empty
]

Şemanızda Bundle_array özelliğini kullanma

Bu bölüm bundle_array için geçerlidir uygulama kısıtlamaları. bool türündeki çocuk uygulama kısıtlamalarının seçim, tamsayı, çoklu seçim veya dize varsayılan değerlere sahiptir.

Örneğin, aşağıdaki uygulama kısıtlama şemasıyla:

"restrictions": [{
    "key": "bundle_array_key",
    "restrictionType": "bundleArray",
    "nestedRestriction": [{
        "key": "bundle_key",
        "restrictionType": "bundle",
        "nestedRestriction": [{
            "key": "bool_key",
            "restrictionType": "bool",
            "defaultValue": {
                "type": "bool",
                "valueBool": true
            }
        }]
    }]
}]

Bundle_array uygulama kısıtlamasında en az bir paket grubuna sahip olma

En az bir paket grubu ayarlanmışsa bundle_array yöneticiler yönetilen yapılandırmayı kaydettiğinde uygulama kısıtlaması dahil edilir.

Cihaza gönderilen uygulama kısıtlamaları:

"restrictions": [{
    "key": "bundle_array_key",
    "restrictionType": "bundleArray",
    "nestedRestriction": [{
        "key": "bundle_key",
        "restrictionType": "bundle",
        "nestedRestriction": [{
            "key": "bool_key",
            "restrictionType": "bool",
            "value": {
                "type": "bool",
                "valueBool": true
            }
        }]
    }]
}]

Bundle_array uygulama kısıtlamasında paket grubu yok

bundle_array yöneticiler yönetilen yapılandırmayı kaydettiğinde uygulama kısıtlaması dahil edilmez bir paket eklemeden grubu. Cihaza gönderilen uygulama kısıtlamaları:

"restrictions": [
    // Empty
]