Yönetilen yapılandırmaları destekleme

Kurumlar için tasarlanmış bazı uygulamalarda Managed yapılandırmalarına olanak tanır. Örneğin, bir uygulama verileri yalnızca cihaz kablosuz ağa bağlıyken senkronize etme seçeneğine sahip olursunuz. Sağlayan BT yöneticilerinin, yönetilen yapılandırmaları belirleme ve bunları uygulama cihaz sayısı tüm çözüm grupları için zorunludur. EMM konsolunuzda yönetilen yapılandırmaları iki şekilde destekleyebilirsiniz:

  • Kendi kullanıcı arayüzünüzü oluşturun ve ayarları managedConfiguration aracılığıyla uygulayın: ApplicationPolicy.
  • Yönetilen yapılandırma iframe'ini konsolunuza ekleme (talimatlar ayrıntılı) aşağıda) ve ayarları managedConfigurationTemplate aracılığıyla uygulayın: ApplicationPolicy


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.

iframe'i konsolunuza ekleme

Web jetonu oluşturun

enterprises.webTokens.create kullanın kuruluşu tanımlayan bir web jetonu oluşturun ve iframeFeature değerini MANAGED_CONFIGURATIONS. Döndürülen jetonu, diğer parametrelerini kullanmanız gerekir.

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.

Politikaya yapılandırma profilleri uygulayın

Her yapılandırma profili benzersiz bir mcmId olarak kaydedilir. Bir bir politikaya dönüştürme, mcmId alan adını şurada belirtin: managedConfigurationTemplate


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ı. Tüm alt uygulama kısıtlamaları, bool, 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ı. Alt uygulamanın türüne göre kısıtlamaları, bool, 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
            }
        }]
    }]
}]

Bir kısıtlama veya paket grubu kaydedildiyse tüm kısıtlamalar/paketler içindeki tüm bundle_array için aşağıdaki önceliğe göre ayarlanır:

  • yönetici tarafından seçilen değer
  • söz konusu paket/kısıtlama için listelenen varsayılan değere
  • herhangi bir varsayılan değer yoksa iFrame'de görüntülenen değer
ziyaret edin.

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
]