Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Sada Microsoft Intune App SDK pro Android umožňuje začlenit zásady ochrany aplikací Intune (označované také jako zásady MAM) do nativní aplikace Java/Kotlin pro Android. Aplikace spravovaná Intune je aplikace, která je integrovaná se sadou Intune App SDK. Správci Intune můžou do vaší Intune spravované aplikace snadno nasadit zásady ochrany aplikací Intune když ji aktivně spravuje.
Poznámka
Tento průvodce je rozdělen do několika odlišných fází. Začněte tím, že si projdete 1. fázi: Plánování integrace.
6. fáze: App Configuration
Cíle fází
- Přečtěte si o možnostech konfigurace aplikací v Androidu.
- Rozhodněte, které konfigurace (pokud nějaké) by vaše aplikace měla přidat.
- Integrujte rozhraní API pro konfiguraci aplikací Intune App SDK.
- Implementujte logiku řešení konfliktů pro vlastní konfigurace aplikací.
App Configuration na Androidu
Konfigurace aplikací, označované také jako spravované konfigurace nebo omezení aplikací, jsou nastavení specifická pro aplikaci a definovaná vývojářem, která můžete přidat do své aplikace, aby správci získali větší kontrolu nad používáním aplikace při použití ve spravovaném prostředí. Pokud je například vaší aplikací prohlížeč, můžete se rozhodnout přidat konfigurace, které správcům umožní přednastavovat záložky, blokovat určité webové stránky nebo zakázat anonymní režimy. Konfigurace aplikace je zcela volitelný, ale výkonný nástroj, který vylepšuje možnosti správy vaší aplikace.
Další podrobnosti najdete v tématu Zásady konfigurace aplikací pro Microsoft Intune.
Konfigurace Built-In aplikací pro Android
Android má v platformě integrovanou konfiguraci aplikací, která se označuje jako spravované konfigurace. Tyto konfigurace nemají žádnou závislost na sadě Intune App SDK a je možné je povolit v aplikacích, které neintegrují sadu Intune App SDK. Tyto konfigurace platí jenom v případě, že se vaše aplikace používá v zařízení, které je spravované jedním z režimů Androidu Enterprise od Googlu. Podrobnosti o tom, jak nastavit tyto režimy Android Enterprise v aplikaci Microsoft Intune, najdete v tématu Registrace zařízení s Androidem. Správci můžou tyto zásady konfigurace aplikací pro spravovaná zařízení s Androidem Enterprise nakonfigurovat v Microsoft Intune.
Vaše aplikace může tyto hodnoty načíst buď prostřednictvím Androidu, RestrictionsManager nebo prostřednictvím sady Intune App SDK.
Další informace najdete v tématu načítání konfigurace aplikací ze sady SDK .
Delegované obory pro spravované aplikace Google Play
Vývojáři aplikací mohou pomocí delegovaných oborů integrovat rozšířená oprávnění pro své spravované aplikace Google Play. Delegované obory poskytují následující možnosti pro spravované aplikace Google Play:
- Povolit instalaci a správu certifikátů dalším aplikacím
- Povolit aplikaci přístup k protokolům zabezpečení Androidu
- Povolit aplikaci přístup k protokolům síťové aktivity Androidu
Po integraci těchto funkcí do spravované aplikace Google Play pomocí rozhraní API Google můžete tato nastavení nakonfigurovat v Intune pomocí profilů konfigurace zařízení. Další informace najdete v tématu Nastavení zařízení s Androidem Enterprise –> Aplikace vlastněné > společností.
Podrobnosti o implementaci aplikací najdete v dokumentaci pro vývojáře Androidu – Obory delegování.
Konfigurace aplikací sady SDK pro aplikace Intune
Sada Intune App SDK podporuje jiný mechanismus pro doručování konfigurací aplikací, který je oddělený od konfigurací spravovaných Androidem Enterprise. Tyto konfigurace jsou exkluzivní pro Microsoft Intune a vztahují se pouze na aplikace, které mají integrovanou sadu Intune App SDK. Tyto konfigurace se však neomezují pouze na zařízení se správou systému Android Enterprise. Správci můžou tyto zásady konfigurace aplikací pro spravované aplikace konfigurovat v Microsoft Intune.
Poznámka
Konfiguraci aplikace je možné nakonfigurovat také pomocí rozhraní Graph API. Informace najdete v dokumentaci k rozhraní Graph API pro cílenou konfiguraci MAM.
Aplikace musí tyto hodnoty načíst pomocí sady Intune App SDK. Další informace najdete v tématu načítání konfigurace aplikací ze sady SDK .
Jaké konfigurace mám do aplikace přidat?
Tato příručka vám na tuto otázku nedokáže odpovědět. Jenom vy a váš tým víte, díky kterým funkce je vaše aplikace cennější, když ji spravujete.
Následující otázky vám můžou pomoct vést diskuzi a odhalit konfigurace, které byste mohli chtít do své aplikace přidat:
- Jaké funkce dnes vaše aplikace nabízí?
- Má smysl kteroukoli z těchto funkcí deaktivovat, když ji spravujete?
- Má smysl měnit kteroukoli z těchto funkcí, když jste pod správou?
- Jak se dnes vaše aplikace používá?
- Existují nějaké možnosti, které by správci mohli předkonfigurovat jménem svých uživatelů?
- Provádějí správci nebo koncoví uživatelé nějaké akce, které se týkají výhradně spravovaných scénářů?
- Požadovali spravovaní uživatelé funkce, které nemusí být vhodné pro celou populaci uživatelů?
Pro každou konfiguraci, kterou se rozhodnete přidat do aplikace, budete muset definovat tři položky:
- Klíč – tento řetězec jednoznačně identifikuje toto nastavení od ostatních nastavení. Měl by být čitelný pro člověka, protože ho budou konfigurovat správci.
- Typ – o jaký datový typ jde toto nastavení? Jedná se o řetězec, logickou hodnotu, celé číslo, pole atd.?
- Strategie řešení konfliktů – jak bude vaše aplikace reagovat, pokud správci nakonfigurují více hodnot pro stejný klíč? Ve výše zmíněném příkladu prohlížeče může seznam záložek kombinovat všechny hodnoty, zatímco nastavení pro zakázání anonymního režimu se může rozhodnout zakázat, pokud je některá z konfliktních hodnot "pravda".
Měla by moje aplikace podporovat konfiguraci pro spravovaná zařízení nebo spravované aplikace?
Konfigurace, které se vztahují na spravovaná zařízení, a konfigurace, které platí pro spravované aplikace, se vzájemně nevylučují. Při rozhodování, jaký typ (nebo oba) konfigurace budete podporovat, byste měli vzít v úvahu potřeby uživatelů.
| Oblast konfigurace | Konfigurace pro spravovaná zařízení | Konfigurace pro spravované aplikace |
|---|---|---|
| Použitelnost zařízení | Platí jenom na zařízeních se správou zařízení s Androidem Enterprise. | Platí pro všechna zařízení, pokud aplikace integruje sadu Intune App SDK a je nainstalovaný Portál společnosti. |
| Platforma | Pouze Android, omezeno na zařízení se službami Google | iOS App SDK podporuje stejné konfigurace. Jako vývojáři můžete tyto klíče sdílet, abyste měli konzistentní prostředí napříč platformami. |
| Použitelnost | Jakýkoliv EMM | Exkluzivně v rámci Microsoft Intune |
| Zjistitelnost schématu | Schéma je veřejně dostupné po nahrání aplikace do funkce Přehrát. | Zjistitelnost schématu pod kontrolou vývojáře |
Oba typy konfigurace aplikací spoléhají na páry klíč-hodnota. Microsoft Intune nekontroluje obsah těchto konfigurací a jednoduše předá vaší aplikaci hodnoty nakonfigurované správcem.
Rozhraní API pro konfiguraci aplikace sady SDK pro aplikaci Intune obsahuje hodnoty nakonfigurované správcem z obou kanálů. Pokud vaše aplikace podporuje oba typy konfigurace aplikací, použijte rozhraní API, jak je popsáno níže.
Načítání konfigurace aplikace ze sady SDK
Aplikace mohou přijímat konfigurace z obou kanálů pomocí tříd MAMAppConfigManager a MAMAppConfig .
MAMAppConfigManager configManager = MAMComponents.get(MAMAppConfigManager.class);
String oid = <OID of user account>;
MAMAppConfig appConfig = configManager.getAppConfigForOID(oid);
String fooValue = appConfig.getStringForKey("foo", MAMAppConfig.StringQueryType.Any);
Pokud neexistuje žádný účet registrovaný MAM, ale vaše aplikace by přesto chtěla načíst hodnoty konfigurace Androidu Enterprise (které nebudou cílené na konkrétní účet), můžete pro identifikátor OID předat null nebo prázdný řetězec.
Poznámka
Pokud vaše aplikace používá sadu Intune App SDK k načtení konfigurací spravovaných Androidem Enterprise a Portál společnosti není nainstalovaný, budou tyto konfigurace doručeny prostřednictvím A MAMUserNotification s prázdnou identitou.
Vaše aplikace si také může vyžádat nezpracovaná data jako seznam sad párů klíč-hodnota, místo aby se dotazovala podle konkrétních klíčů.
List<Map<String, String>> getFullData()
Aplikace se také může zaregistrovat k odběru REFRESH_APP_CONFIG oznámení, které ji informuje o dostupnosti nových konfiguračních dat aplikace.
Pokud vaše aplikace ukládá konfigurační data aplikace do mezipaměti, musí se zaregistrovat pro toto oznámení a zneplatnit všechna data uložená v mezipaměti v obslužné rutině.
Další podrobnosti najdete v tématu Registrace k odběru oznámení ze sady SDK .
Řešení konfliktů
Pokud je na stejnou aplikaci a účet zaměřeno více zásad konfigurace aplikací, může být pro stejný klíč k dispozici několik konfliktních hodnot.
Poznámka
Hodnota nastavená v konfiguraci aplikace MAM přepíše hodnotu se stejnou sadou klíčů v konfiguraci Androidu Enterprise.
Pokud správce nakonfiguruje konfliktní hodnoty pro stejný klíč, Intune nemá žádný způsob, jak tento konflikt vyřešit automaticky, a zpřístupní všechny hodnoty vaší aplikaci. K tomuto typu konfliktu může dojít, pokud správce zaměří různé sady konfiguračních sad aplikací se stejným klíčem na více skupin obsahujících stejný účet.
Vaše aplikace si může vyžádat všechny hodnoty pro daný klíč z objektu MAMAppConfig , abyste mohli vyřešit konflikty s vlastní obchodní logikou:
List<Boolean> getAllBooleansForKey(String key)
List<Long> getAllIntegersForKey(final String key)
List<Double> getAllDoublesForKey(final String key)
List<String> getAllStringsForKey(final String key)
Případně můžete požádat o výběr hodnoty pomocí jedné z předdefinovaných strategií řešení konfliktů:
Boolean getBooleanForKey(String key, BooleanQueryType queryType)
Long getIntegerForKey(String key, NumberQueryType queryType)
Double getDoubleForKey(String key, NumberQueryType queryType)
String getStringForKey(String key, StringQueryType queryType)
Mezi dostupné integrované strategie řešení konfliktů patří:
-
BooleanQueryType.Any,BooleanQueryType.And,BooleanQueryType.Or -
NumberQueryType.Any,NumberQueryType.Min,NumberQueryType.Max -
StringQueryType.Any,StringQueryType.Min,StringQueryType.Max, kde min a max jsou z abecedně uspořádaného seznamu.
Kritéria pro ukončení
Intune zodpovídá za doručení hodnot zásad konfigurace aplikace do vaší aplikace. Vaše aplikace pak zodpovídá za použití těchto hodnot ke změně chování nebo uživatelského rozhraní uvnitř aplikace. Důkladné end-to-end testování by mělo zahrnovat obě složky.
Ověření, že Intune správně doručuje zásady konfigurace aplikací:
- Nakonfigurujte zásady konfigurace aplikací, které jsou cílené na vaši aplikaci a nasazené do vašeho testovacího účtu.
- Pokud vaše aplikace podporuje konfiguraci aplikací pro spravovaná zařízení, přečtěte si téma Zásady konfigurace aplikací pro spravovaná zařízení s Androidem Enterprise.
- Pokud vaše aplikace podporuje konfiguraci aplikací pro spravované aplikace, přečtěte si téma Zásady konfigurace aplikací pro spravované aplikace.
- Pokud vaše aplikace podporuje oba typy konfigurace aplikací, vytvořte oba typy zásad pro testování.
- Přihlaste se k aplikaci pomocí zkušebního účtu.
- Informace o spravovaných zařízeních najdete v tématu Zásady konfigurace podnikových aplikací pro Android a Registrace zařízení s Androidem.
- U spravovaných aplikací:
- Nainstalujte aplikaci i Portál společnosti Intune.
- Přihlaste se k aplikaci pomocí zkušebního účtu.
- Procházejte aplikaci a procvičujte každou cestu kódu, která volá
MAMAppConfigManagerznakygetAppConfigForOIDgetFullDataa .- Protokolování výsledků volání je
getAppConfigForOIDjednoduchý způsob, jak ověřit, která nastavení se doručují. Protože ale správci můžou zadat jakákoli data pro nastavení konfigurace aplikace, nedávejte pozor, abyste do protokolu nezaznamenávali žádná soukromá uživatelská data.
- Protokolování výsledků volání je
- Viz Ověření použité zásady konfigurace aplikací.
Vzhledem k tomu, že konfigurace aplikací jsou specifické pro jednotlivé aplikace, pouze vy víte, jak ověřit, jak má vaše aplikace změnit chování nebo uživatelské rozhraní pro každé nastavení konfigurace aplikace.
Při testování zvažte následující:
- Zajištěním všech scénářů pokrytých vytvořením různých zásad konfigurace testovací aplikace se všemi hodnotami, které vaše aplikace podporuje.
- Ověření logiky řešení konfliktů vaší aplikace vytvořením více zásad konfigurace testovací aplikace s různými hodnotami pro každé nastavení.
- Pokud se vaše aplikace zaregistrovala
REFRESH_APP_CONFIGpro oznámení, aktualizace zásad konfigurace aplikace v době, kdy se vaše aplikace aktivně používá, čekání na aktualizaci zásad a potvrzení této cesty kódu se správně provede. - Pokud vaše aplikace podporuje oba typy konfigurace aplikací, otestujte oba scénáře, abyste zajistili, že vaše implementace poskytuje správnou identitu .
getAppConfigForOID
Další kroky
Po dokončení všech výše uvedených ukončovacích kritérií je teď vaše aplikace úspěšně integrovaná jako se zásadami konfigurace aplikací.
Následující část, fáze 7: Funkce účasti v aplikaci, může, ale nemusí být vyžadována v závislosti na požadované podpoře zásad ochrany aplikací vaší aplikací. Pokud si nejste jistí, jestli se některá z těchto funkcí vztahuje na vaši aplikaci, přečtěte si klíčová rozhodnutí pro integraci sady SDK.