Android için Intune Uygulama SDK'sı - Uygulama yapılandırması
Android için Microsoft Intune Uygulama SDK'sı, Intune uygulama koruma ilkelerini ( APP veya MAM ilkeleri olarak da bilinir) yerel Java/Kotlin Android uygulamanıza eklemenizi sağlar. Intune tarafından yönetilen bir uygulama, Intune Uygulama SDK'sı ile tümleştirilmiş bir uygulamadır. Intune yöneticileri, Intune tarafından yönetilen uygulama etkin bir şekilde yönetildiğinde uygulama koruma ilkelerini intune tarafından yönetilen uygulamanıza kolayca dağıtabilir.
Not
Bu kılavuz birkaç ayrı aşamaya ayrılmıştır. 1. Aşama: Tümleştirmeyi Planlama'ya bakarak başlayın.
6. Aşama: Uygulama Yapılandırması
Aşama Hedefleri
- Android'de uygulama yapılandırma seçenekleri hakkında bilgi edinin.
- Varsa uygulamanızın hangi yapılandırmaları ekleyeceğine karar verin.
- Intune Uygulama SDK'sı uygulama yapılandırma API'lerini tümleştirin.
- Özel uygulama yapılandırmalarınız için çakışma çözümleme mantığı uygulayın.
Android'de Uygulama Yapılandırması
Yönetilen yapılandırmalar veya uygulama kısıtlamaları olarak da adlandırılan uygulama yapılandırmaları, yönetilen bir ayarda kullanıldığında yöneticilere uygulama deneyimi üzerinde ek denetim sağlamak için uygulamanıza ekleyebileceğiniz uygulamaya özgü ve geliştirici tanımlı ayarlardır. Örneğin, uygulamanız bir tarayıcıysa yöneticilerin yer işaretlerini önceden ayarlamasına, belirli web sayfalarını engellemesine veya gizli modları devre dışı bırakmasına izin veren yapılandırmalar eklemeyi seçebilirsiniz. Uygulama yapılandırması, uygulamanızın yönetim deneyimini geliştirmek için tamamen isteğe bağlı ancak güçlü bir araçtır.
Daha fazla ayrıntı için bkz. Microsoft Intune için uygulama yapılandırma ilkeleri .
Android'in Built-In Uygulama Yapılandırmaları
Android,platformda yönetilen yapılandırmalar olarak adlandırılan uygulama yapılandırmasına sahiptir. Bu yapılandırmaların Intune Uygulama SDK'sı bağımlılığı yoktur ve Intune Uygulama SDK'sını tümleştirmeyen uygulamalarda etkinleştirilebilir. Bu yapılandırmalar yalnızca uygulamanız Google'ın Android Kurumsal modlarından biriyle yönetilen bir cihazda kullanıldığında geçerlidir. Microsoft Intune'da bu Android Kurumsal modlarını ayarlama hakkında ayrıntılı bilgi için bkz. Android cihazlarını kaydetme . Yöneticiler, Microsoft Intune'da yönetilen Android Kurumsal cihazlar için bu uygulama yapılandırma ilkelerini yapılandırabilir.
Uygulamanız, yönetici tarafından yapılandırılan bu değerleri Android'in veya Intune Uygulama SDK'sı RestrictionsManager
aracılığıyla alabilir.
Daha fazla bilgi için bkz. SDK'dan uygulama yapılandırmasını alma .
Yönetilen Google Play uygulamaları için temsilci kapsamları
Uygulama geliştiricileri, Yönetilen Google Play uygulamaları için gelişmiş izinleri tümleştirmek için temsilcili kapsamları kullanabilir. Temsilcili kapsamlar, Yönetilen Google Play uygulamaları için aşağıdaki özellikleri sağlar:
- Diğer uygulamaların sertifikaları yüklemesine ve yönetmesine izin ver
- Uygulamanın Android güvenlik günlüklerine erişmesine izin ver
- Uygulamanın Android ağ etkinlik günlüklerine erişmesine izin ver
Bu özellikler, Google'ın API'sini kullanarak Yönetilen Google Play uygulamasıyla tümleştirildikten sonra, cihaz yapılandırma profillerini kullanarak Intune'da bu ayarları yapılandırabilirsiniz. Daha fazla bilgi için bkz. Android Kurumsal cihaz ayarları - Uygulamalar.
Uygulama uygulama ayrıntıları için bkz. Android geliştirici belgeleri - Temsilci kapsamları.
Intune Uygulama SDK'sı Uygulama Yapılandırmaları
Intune Uygulama SDK'sı, Android Kurumsal tarafından yönetilen yapılandırmalardan ayrı olarak uygulama yapılandırmaları sunmak için başka bir mekanizmayı destekler. Bu yapılandırmalar Microsoft Intune'a özeldir ve yalnızca Intune Uygulama SDK'sını tümleştirmiş uygulamalar için geçerlidir. Ancak, bu yapılandırmalar Android Kurumsal yönetimi olan cihazlarla sınırlı değildir. Yöneticiler, Microsoft Intune'da yönetilen uygulamalar için bu uygulama yapılandırma ilkelerini yapılandırabilir.
Not
Uygulama yapılandırması Graph API'sini kullanarak da yapılandırılabilir. Bilgi için MAM Hedefli Yapılandırma için Graph API belgelerine bakın.
Uygulamanız, intune Uygulama SDK'sı aracılığıyla yönetici tarafından yapılandırılan bu değerleri almalıdır. Daha fazla bilgi için bkz. SDK'dan uygulama yapılandırmasını alma .
Uygulamama hangi yapılandırmaları eklemeliyim?
Bu kılavuz bu soruyu sizin için yanıtlayamaz. Yönetim altındayken uygulamanızın daha değerli olmasını sağlayacak özellikleri yalnızca siz ve ekibiniz biliyorsunuz.
Aşağıdaki sorular tartışmalara yol göstermenize ve uygulamanıza eklemek isteyebileceğiniz yapılandırmaları ortaya çıkarmanıza yardımcı olabilir:
- Uygulamanız bugün hangi özellikleri sunuyor?
- Yönetim altındayken bu özelliklerden herhangi birini devre dışı bırakmanın bir değeri var mı?
- Yönetim altındayken bu özelliklerden herhangi birini değiştirmenin bir değeri var mı?
- Uygulamanız bugün yönetim altında nasıl kullanılıyor?
- Yöneticilerin kullanıcıları adına önceden yapılandırabileceği seçenekler var mı?
- Yönetilen senaryolar hariç olmak üzere yöneticilerin veya son kullanıcıların yaptığı herhangi bir eylem var mı?
- Yönetilen kullanıcılarınız tüm kullanıcı popülasyonunuz için uygun olmayan özellikler istedi mi?
Uygulamanıza eklemeye karar vereceğiniz her yapılandırma için üç öğe tanımlamanız gerekir:
- Anahtar - Bu dize bu ayarı diğer ayarlardan benzersiz olarak tanımlar. Yöneticiler tarafından yapılandırılacağı için insanlar tarafından okunabilir olmalıdır.
- Tür - Bu ayar hangi veri türü? Dize, boole, tamsayı, dizi vb. mi?
- Çakışma çözümleme stratejisi - Yöneticiler aynı anahtar için birden çok değer yapılandırırsa uygulamanız nasıl yanıt verir? Yukarıda belirtilen tarayıcı örneğinde yer işareti listesi tüm değerleri birleştirebilirken, gizliyi devre dışı bırakma ayarı çakışan değerlerden biri "true" ise devre dışı bırakılabilir.
Uygulamam Yönetilen Cihazlar veya Yönetilen Uygulamalar için yapılandırmayı desteklemeli mi?
Yönetilen cihazlar için geçerli olan yapılandırmalar ve yönetilen uygulamalar için geçerli olan yapılandırmalar birbirini dışlamaz. Desteklenmesi gereken yapılandırma türüne (veya her ikisine) karar verirken kullanıcılarınızın gereksinimlerini dikkate almanız gerekir.
Yapılandırma alanı | Yönetilen Cihazlar için Yapılandırma | Yönetilen Uygulamalar için Yapılandırma |
---|---|---|
Cihaz Uygulanabilirliği | Yalnızca Android Kurumsal cihaz yönetimi altındaki cihazlarda geçerlidir. | Uygulama Intune Uygulama SDK'sını tümleştirdiği ve Şirket Portalı yüklü olduğu sürece tüm cihazlar için geçerlidir. |
Ortam | Yalnızca Android, Google hizmetleri olan cihazlarla sınırlı | iOS Uygulama SDK'sı aynı yapılandırmaları destekler. Bir geliştirici olarak tutarlı bir platformlar arası deneyim için bu anahtarları paylaşabilirsiniz. |
Uygulanabilirlik | Herhangi bir EMM | Microsoft Intune'a özel |
Şema Bulunabilirliği | Şema, uygulama Play'e yüklendikten sonra genel kullanıma sunuldu | Geliştirici denetimi altında şema bulunabilirliği |
Her iki uygulama yapılandırması türü de anahtar-değer çiftlerini kullanır. Microsoft Intune bu yapılandırmaların içeriğini incelemez ve yalnızca yönetici tarafından yapılandırılan değerleri uygulamanıza geçirir.
Intune Uygulama SDK'sı uygulama yapılandırma API'sinde her iki kanaldan yönetici tarafından yapılandırılmış değerler bulunur. Uygulamanız her iki uygulama yapılandırması türünü de destekliyorsa, aşağıda açıklandığı gibi API'yi kullanın.
SDK'dan uygulama yapılandırmasını alma
Uygulamalar MAMAppConfigManager ve MAMAppConfig sınıflarını kullanarak her iki kanaldan da yapılandırma alabilir.
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);
MAM'a kayıtlı bir hesap yoksa ancak uygulamanız Yine de Android Kurumsal yapılandırma değerlerini almak isterse (belirli bir hesaba hedeflenmez), OID için bir null
veya boş dize geçirebilirsiniz.
Not
Uygulamanız Android Kurumsal yönetilen yapılandırmalarını almak için Intune Uygulama SDK'sını kullanıyorsa ve Şirket Portalı yüklü değilse, bu yapılandırmalar boş bir kimlikle aracılığıyla MAMUserNotification
teslim edilir.
Uygulamanız ham verileri belirli anahtarlara göre sorgulamak yerine anahtar-değer çiftleri kümesi listesi olarak da isteyebilir.
List<Map<String, String>> getFullData()
Uygulamanız, uygulamaya yeni uygulama yapılandırma verilerinin REFRESH_APP_CONFIG
kullanılabilir olduğunu bildiren bildirime de kaydolabilir.
Uygulamanız uygulama yapılandırma verilerini önbelleğe alırsa, bu bildirime kaydolması ve işleyicideki önbelleğe alınmış verileri geçersiz kılması gerekir.
Daha fazla ayrıntı için bkz. SDK'dan bildirimlere kaydolma .
Çakışmaları çözme
Aynı uygulama ve hesapta birden çok uygulama yapılandırma ilkesi hedefleniyorsa, aynı anahtar için birden çok çakışan değer kullanılabilir.
Not
MAM uygulama yapılandırmasında ayarlanan bir değer, Android Kurumsal yapılandırmasında aynı anahtara sahip bir değeri geçersiz kılar.
Bir yönetici aynı anahtar için çakışan değerleri yapılandırırsa, Intune'un bu çakışmayı otomatik olarak çözmenin bir yolu yoktur ve tüm değerleri uygulamanız için kullanılabilir hale getirir. Yönetici aynı anahtara sahip farklı uygulama yapılandırma kümelerini aynı hesabı içeren birden çok gruba hedeflediyse bu tür bir çakışma oluşabilir.
Uygulamanız bir MAMAppConfig nesnesinden belirli bir anahtar için tüm değerleri isteyebilir, böylece çakışmaları kendi iş mantığınızla çözebilirsiniz:
List<Boolean> getAllBooleansForKey(String key)
List<Long> getAllIntegersForKey(final String key)
List<Double> getAllDoublesForKey(final String key)
List<String> getAllStringsForKey(final String key)
Alternatif olarak, yerleşik çakışma çözümleme stratejilerinden biriyle bir değerin seçilmesini isteyebilirsiniz:
Boolean getBooleanForKey(String key, BooleanQueryType queryType)
Long getIntegerForKey(String key, NumberQueryType queryType)
Double getDoubleForKey(String key, NumberQueryType queryType)
String getStringForKey(String key, StringQueryType queryType)
Kullanılabilir yerleşik çakışma çözümleme stratejileri şunlardır:
-
BooleanQueryType.Any
,BooleanQueryType.And
,BooleanQueryType.Or
-
NumberQueryType.Any
,NumberQueryType.Min
,NumberQueryType.Max
-
StringQueryType.Any
,StringQueryType.Min
, ,StringQueryType.Max
, burada min ve max alfabetik olarak sıralanmış bir listedendir.
Çıkış Ölçütleri
Uygulama yapılandırma ilkesi değerlerini uygulamanıza sunmak Intune'un sorumluluğundadır; daha sonra, uygulamanızın içindeki davranışı veya kullanıcı arabirimini değiştirmek için bu değerleri kullanmak sizin sorumluluğunuzdadır. Kapsamlı uçtan uca test her iki bileşeni de kapsamalıdır.
Intune'un uygulama yapılandırma ilkesini düzgün bir şekilde teslim ettiğini doğrulamak için:
- Uygulamanızı hedefleyen ve test hesabınıza dağıtılan bir uygulama yapılandırma ilkesi yapılandırın.
- Uygulamanız yönetilen cihazlar için uygulama yapılandırmasını destekliyorsa bkz. Yönetilen Android Kurumsal cihazlar için uygulama yapılandırma ilkeleri.
- Uygulamanız yönetilen uygulamalar için uygulama yapılandırmasını destekliyorsa bkz. Yönetilen uygulamalar için uygulama yapılandırma ilkeleri.
- Uygulamanız her iki tür uygulama yapılandırmasını destekliyorsa test için her iki ilke türünü de oluşturun.
- Test hesabınızla uygulamanızda oturum açın.
- Yönetilen cihazlar için bkz. Android kurumsal uygulama yapılandırma ilkeleri ve Android cihazlarını kaydetme.
- Yönetilen uygulamalar için:
- Hem uygulamanızı hem de Intune Şirket Portalı'nı yükleyin.
- Test hesabınızla uygulamanızda oturum açın.
- 's
getAppConfigForOID
veyagetFullData
çağıranMAMAppConfigManager
her kod yolu için uygulamanızda gezinin.- Arama sonuçlarını günlüğe
getAppConfigForOID
kaydetmek, hangi ayarların teslim edildiklerini doğrulamanın basit bir yoludur. Ancak, yöneticiler uygulama yapılandırma ayarları için herhangi bir veri girebildiğinden, özel kullanıcı verilerini günlüğe kaydetmemeye dikkat edin.
- Arama sonuçlarını günlüğe
- Bkz . Uygulanan uygulama yapılandırma ilkesini doğrulama.
Uygulama yapılandırmaları uygulamaya özgü olduğundan, uygulamanızın her uygulama yapılandırma ayarı için davranışı veya kullanıcı arabirimini nasıl değiştireceğini nasıl doğrulayabileceğinizi yalnızca siz bilirsiniz.
Test ederken aşağıdakileri göz önünde bulundurun:
- Uygulamanızın desteklediği her değerle farklı test uygulaması yapılandırma ilkesi oluşturarak tüm senaryoların ele alınmasını sağlama.
- Her ayar için farklı değerlerle birden çok test uygulaması yapılandırma ilkesi oluşturarak uygulamanızın çakışma çözümleme mantığını doğrulama.
- Uygulamanız bildirim için
REFRESH_APP_CONFIG
kaydoldıysa, uygulamanız etkin kullanımdayken uygulama yapılandırma ilkesini güncelleştiriyor, ilkenin güncelleştirilmesini bekliyor ve bu kod yolu düzgün bir şekilde kullanılıyor. - Uygulamanız her iki tür uygulama yapılandırmasını destekliyorsa, uygulamanızın için doğru kimliği sağladığından emin olmak için her iki senaryoyu da test edin
getAppConfigForOID
.
Sonraki Adımlar
Yukarıdaki tüm Çıkış Ölçütlerini tamamladıktan sonra, uygulamanız artık uygulama yapılandırma ilkesiyle olduğu gibi başarıyla tümleştirilir.
Sonraki bölüm olan 7. Aşama: Uygulama Katılım Özellikleri, uygulamanızın istenen uygulama koruma ilkesi desteğine bağlı olarak gerekli olabilir veya olmayabilir. Bu özelliklerden herhangi birinin uygulamanız için geçerli olup olmadığından emin değilseniz SDK tümleştirmesi için Önemli Kararlar bölümüne bakın.