Element iframe konfiguracji zarządzanych to możliwy do umieszczenia interfejs użytkownika, który umożliwia administratorom IT umieszczanie w nim elementów. zapisywania, edytowania i usuwania ustawień konfiguracji zarządzanej aplikacji. Możesz na przykład wyświetlać przycisk (lub podobny element interfejsu) w szczegółach aplikacji lub strony ustawień, która otwiera element iframe.
Działania dostępne dla administratorów IT z poziomu elementu iframe
![iframe MCM](https://developers-dot-devsite-v2-prod.appspot.com/static/android/work/play/emm-api/images/mcm_iframe.png?authuser=5&hl=pl)
Ustawianie i zapisywanie profili konfiguracji
Element iframe pobiera i wyświetla schemat konfiguracji zarządzanych dla
w przypadku określonej aplikacji. W elemencie iframe administrator może określić konfiguracje i zapisać
jako profil konfiguracji. Za każdym razem, gdy administrator zapisze nowy plik
profilu konfiguracji, element iframe zwraca unikalny identyfikator o nazwie mcmId
.
Dzięki temu administratorzy IT mogą tworzyć wiele profili dla tego samego
.
Edytuj profile konfiguracji
Element iframe może wyświetlać zapisane profile konfiguracji. Administratorzy IT mogą zaktualizować ustawienia w profilu i zapisać zmiany.
Usuń profile konfiguracji
Administratorzy IT mogą usuwać profile konfiguracji z elementu iframe. Ta funkcja jest domyślnie wyłączone.
Wyświetlanie elementu iframe konfiguracji zarządzanych w konsoli
Generowanie tokena internetowego
Użyj narzędzia Enterprises.createWebToken
, aby wygenerować token internetowy identyfikujący firmę. Musisz dołączyć parametr
zwrócony token wraz z innymi parametrami, podczas renderowania elementu iframe
konsoli. Poniższy przykład pokazuje, jak pobrać token za pomocą polecenia Google
Biblioteka klienta Play EMM API dla języka Java
public AdministratorWebToken getAdministratorWebToken(
String enterpriseId,
AdministratorWebTokenSpec tokenSpec) throws IOException {
return androidEnterprise
.enterprise()
.createWebToken(enterpriseId, tokenSpec)
.execute();
}
Renderowanie elementu iframe
Oto przykład renderowania elementu iframe konfiguracji zarządzanych:
<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>
Parametry adresu URL
Tabela poniżej zawiera wszystkie dostępne parametry adresu URL elementu iframe.
Parametr | Wymagane | Opis |
---|---|---|
token |
Tak | Token zwrócony z serwera Enterprises.createWebToken . |
packageName |
Tak | Identyfikator produktu aplikacji. Przykład:
com.google.android.gm |
mcmId |
Nie | Identyfikator profilu konfiguracji zarządzanych. |
canDelete |
Nie | Jeśli wartość to TRUE, włącza w elemencie iframe przycisk, który umożliwia IT usunięcia profilu konfiguracji zarządzanych przez administratorów. Jeśli FALSE (wartość domyślna) – przycisk jest wyłączony. |
locale |
Nie | Prawidłowo sformułowana BCP 47 language, który służy do lokalizowania treści w elemencie iframe. Jeśli nie, wartością domyślną jest en_US. |
Zdarzenia iframe
W ramach integracji musisz też obsługiwać poniższe zdarzenia.
Zdarzenie | Opis |
---|---|
onconfigupdated |
Użytkownik aktualizuje istniejący profil konfiguracji zarządzanych lub tworzy nowy
jeden. Spowoduje to zwrócenie obiektu zawierającego:
{ "mcmId": The ID of the managed configurations profile. "name": The name of the updated or newly created managed configurations profile. } |
onconfigdeleted |
Użytkownik usunie istniejący profil konfiguracji zarządzanych. Powoduje to zwrot
obiekt zawierający:
{ "mcmId": The ID of the managed configurations profile. } |
Z przykładu poniżej dowiesz się, jak nasłuchiwać elementu onconfigupdated
:
iframe.register('onconfigupdated', function(event) {
console.log(event);
}, gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER);
Aktualizacje schematu konfiguracji zarządzanych aplikacji
Jeśli deweloper zaktualizuje schemat konfiguracji zarządzanej aplikacji, zapisano są automatycznie aktualizowane. Jeśli na przykład deweloper spowoduje usunięcie opcji, zostanie ona usunięta ze wszystkich istniejących konfiguracji profili aplikacji. Jeśli programista doda opcję, domyślną wartością parametru opcja (zdefiniowana przez programistę) zostanie dodana do całej istniejącej konfiguracji profili aplikacji.
Stosuj konfiguracje zarządzane do użytkowników urządzenia
Aby dowiedzieć się, jak stosować konfiguracje zarządzane do użytkowników urządzeń, zobacz Zastosuj konfiguracje zarządzane
Zrozumienie zachowania polegającego na wyborze i odznaczeniu
Element iframe konfiguracji zarządzanych umożliwia teraz administratorom IT wyraźne odznaczenie miejsca ograniczenia aplikacji w konfiguracji zarządzanej, gdy ich nie potrzebują. Ten jest zmianą w stosunku do wcześniejszego zachowania i może mieć wpływ na to, jakie są wysyłane do Twojej aplikacji na podstawie wyboru administratora.
W sekcji poniżej opisujemy, jak działa element iframe w konfiguracjach zarządzanych nowego wzorca odznaczenia i tego, czego deweloperzy mogą się spodziewać z konfiguracją zarządzaną.
Używanie wartości domyślnej ograniczenia aplikacji
Jeśli w przypadku ograniczeń aplikacji typu bool choice, integer, wybór wielokrotny lub ciąg znaków z wartością domyślną, która zostanie zastosowana jako ograniczenia aplikacji, jeśli administratorzy zapiszą konfigurację zarządzaną bez zastosowanie jakichkolwiek zmian w tym ograniczeniu aplikacji.
Na przykład za pomocą tego schematu ograniczeń aplikacji:
"restrictions": [{
"key": "bool_key",
"restrictionType": "bool",
"defaultValue": {
"type": "bool",
"valueBool": false
}
}]
Ograniczenia aplikacji wysyłane na urządzenie będą:
"restrictions": [{
"key": "bool_key",
"restrictionType": "bool",
"value": {
"type": "bool",
"valueBool": false
}
}]
Bez użycia wartości domyślnych ograniczeń dotyczących aplikacji
Jeśli w przypadku ograniczeń aplikacji typu bool choice, integer, wybór wielokrotny lub ciąg znaków nie mają wartości domyślnej, te ograniczenia aplikacji nie zostaną uwzględniana, gdy administratorzy zapisują konfigurację zarządzaną bez zastosowania zmian dotyczące tego ograniczenia.
Na przykład za pomocą tego schematu ograniczeń aplikacji:
"restrictions": [{
"key": "bool_key",
"restrictionType": "bool"
// defaultValue absent.
}]
Ograniczenia aplikacji wysyłane na urządzenie będą:
"restrictions": [
// Empty
]
Używanie pakietów w schemacie
Ta sekcja dotyczy pakietu ograniczenia aplikacji:
Musisz mieć co najmniej 1 ograniczenie aplikacji podrzędnej z wartością domyślną w ograniczeniu dotyczącym aplikacji w pakiecie.
Jeśli w grupie ograniczenie aplikacji dla co najmniej jednego z ograniczeń aplikacji podrzędnych typu bool, choice, liczba całkowita, wybór wielokrotny lub ciąg z wartością domyślną, która zostanie zastosowana jako ograniczenia aplikacji – te bez wartości domyślnych zostaną wykluczone gdy administratorzy zapiszą konfigurację zarządzaną bez zastosowania w niej żadnych zmian. ograniczenia aplikacji.
"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.
}
]
}]
Ograniczenia aplikacji wysyłane na urządzenie będą:
"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.
]
}]
Wszystkie ograniczenia aplikacji podrzędnych bez wartości domyślnych
Jeśli w grupie ograniczenia aplikacji dla wszystkich aplikacji podrzędnych typu bool, choice, liczba całkowita, wybór wielokrotny lub ciąg nie są dostarczane z wartością domyślną, tj. pakiet ograniczenia aplikacji nie będą uwzględniane, gdy administratorzy zapiszą konfigurację zarządzaną bez wprowadzania zmian w tych ograniczeniach.
Na przykład za pomocą tego schematu ograniczeń aplikacji:
"restrictions": [{
"key": "bundle_key",
"restrictionType": "bundle",
"nestedRestriction": [{
"key": "bool_key_1",
"restrictionType": "bool",
// defaultValue absent.
},
{
"key": "bool_key_2",
"restrictionType": "bool"
// defaultValue absent.
}
]
}]
Ograniczenia aplikacji wysyłane na urządzenie będą:
"restrictions": [
// Empty
]
Korzystanie z pakietu „bundle_array” w schemacie
Ta sekcja dotyczy tabeli bundle_array ograniczenia aplikacji. Nie dotyczy on ograniczeń aplikacji podrzędnych typu bool, choice, integer, wybór wielokrotny lub ciąg znaków mają wartości domyślne.
Na przykład za pomocą tego schematu ograniczeń aplikacji:
"restrictions": [{
"key": "bundle_array_key",
"restrictionType": "bundleArray",
"nestedRestriction": [{
"key": "bundle_key",
"restrictionType": "bundle",
"nestedRestriction": [{
"key": "bool_key",
"restrictionType": "bool",
"defaultValue": {
"type": "bool",
"valueBool": true
}
}]
}]
}]
Obecność co najmniej 1 grupy pakietów w ograniczeniu aplikacji bundle_array
Jeśli co najmniej 1 grupa , atrybut bundle_array ograniczenie dotyczące aplikacji będzie uwzględniane, gdy administratorzy zapiszą konfigurację zarządzaną.
Ograniczenia aplikacji wysyłane na urządzenie będą:
"restrictions": [{
"key": "bundle_array_key",
"restrictionType": "bundleArray",
"nestedRestriction": [{
"key": "bundle_key",
"restrictionType": "bundle",
"nestedRestriction": [{
"key": "bool_key",
"restrictionType": "bool",
"value": {
"type": "bool",
"valueBool": true
}
}]
}]
}]
Brak grup pakietów w ograniczeniu aplikacji bundle_array
bundle_array ograniczenia aplikacji nie będą uwzględniane, gdy administratorzy zapiszą konfigurację zarządzaną bez dodawania grupy grupy reklam. Ograniczenia aplikacji wysyłane na urządzenie będą:
"restrictions": [
// Empty
]