EMM'lere uygulama geri bildirimi gönderme

Kurumsal mobilite yönetimi (EMM) sağlayıcıları, kuruluşlar için çözümler sunar Android cihazları ve bu cihazlarda yüklü uygulamaları yönetin. Bu çözümler, genellikle EMM konsolları adı verilen web konsolları olarak mevcuttur. EMM kullanma BT yöneticileri, kendi cihazları adına cihaz ve uygulama yönetimi görevlerini kurum içinde tutmaktır.

Kurumsal kuruluşları hedefleyen uygulamalar EMM'lere şu biçimde geri bildirim gönderebilir: anahtarlı uygulama durumları hakkında daha fazla bilgi edinin. EMM'lerin anahtarlı uygulama durumu verilerini almak için API'ler kullanılabilir. Bu bilgileri EMM konsollarında görüntüleyebilirler. Bu iletişim kanalı BT yöneticilerinin şu cihazlarda yüklü uygulamaların durumu hakkında geri bildirim almasına olanak tanır: yönettikleri cihazlardır.

Örneğin, bir e-posta istemci uygulaması, senkronizasyon hatalarının ne zaman oluştuğunu bildirin veya Uygulama geliştiricinin uygun olduğunu düşündüğü diğer durum güncellemeleri.

Anahtarlı uygulama durumunun bileşenleri

Anahtarlı uygulama durumu aşağıdakilerden oluşur:

  • Anahtar: Uygulama durumu için benzersiz tanımlayıcı. Maksimum 100 karakter.
  • Mesaj: Uygulama durumunu açıklayan isteğe bağlı mesaj. Maksimum 1.000 karakteri ekleyin. Not: Genellikle iletiler bundan çok daha kısa olmalıdır.
  • Veriler: BT yöneticilerinin izin vermesi için EMM'ler tarafından kullanılması amaçlanan, makine tarafından okunabilen isteğe bağlı değer değerine dayalı uyarılar veya filtreler ayarlayın. Örneğin bir BT yöneticisi veri alanı battery_percentage < 10 ise uyarı ayarlayın. Maksimum 1.000 karakteri ekleyin.
  • Önem derecesi: Uygulama durumunun önem derecesi. İzin verilen değerler: SEVERITY_ERROR ve SEVERITY_INFO (varsayılan). Önem derecesini yalnızca SEVERITY_ERROR olarak ayarla (kurumun düzeltmek için harekete geçmesi gereken gerçek hata durumları)
  • Zaman damgası: Anahtarlı uygulama durumu ayarlandığında, epoch'tan bu yana milisaniye cinsinden zaman damgası.

Yönetilen yapılandırmalarla ilgili geri bildirim gönder

Uygulamanız yönetilen yapılandırmaları destekliyorsa, BT yöneticilerini güncellemek için anahtarlı uygulama durumlarının gönderilmesi önerilir: yapılandırmanın durumunu gösterir. Aşağıdaki örnek iş akışı, yöntemlerden biri.

yönetilen yapılandırmalar için anahtarlı uygulama durumları
  1. BT yöneticileri, EMM konsollarını kullanarak Tümüyle yönetilen bir cihazda yüklü uygulama bir iş profilinin içinden erişilebilir. Örnek:
    • Hacim: "%50"
    • Para birimi: 'USDD'
  2. Uygulama, yapılandırmaları uygulamaya çalışıyor. Ses düzeyi başarıyla ayarlandı değerini %50'ye ekler, ancak para birimi kodu geçersiz ve uygulanamıyor.
  3. Uygulama, her yapılandırmanın durumuna göre anahtarlı bir uygulama durumu ayarlar. Her anahtarlı uygulama durumu, benzersiz bir anahtar ve durumu. Mümkünse yönetilen yapılandırmalar anahtarını eşleştirmenizi öneririz. Örnek:
    Anahtar Mesaj Önem derecesi Zaman damgası
    volume %50'ye ayarla SEVERITY_INFO 1554461130
    currency Para birimi "USDD" tanınmadı SEVERITY_ERROR 1554461130
  4. EMM sağlayıcısı, uygulama tarafından ayarlanan anahtarlı uygulama durumlarını alır ve kendi EMM konsolunda görebilirsiniz. Örnek:
    Yapılandırma Durum İşlem gerekli Süre
    Ses %50'ye ayarla Hayır 5 Nisan 2019; 10:45:30
    Para Birimi HATA: Para birimi "USDD" tanınmadı. Evet 5 Nisan 2019; 10:45:30

    EMM sağlayıcı ayrıca SEVERITY_ERROR BT yöneticisine teslim edilir. BT yöneticileri, EMM konsollarındaki bilgileri görüntüleyebilir ve yapılandırdıkları yapılandırmalardaki hataları düzeltmek için harekete geçmeleri gerekir.

Çözülen hataları bildir

Bir hata çözüldükten sonra EMM'lerin hata mesajını süresiz olarak görüntülemesini önler. Bu ek eyalet şunları içermelidir:

  • Aynı anahtar olarak ayarladığınızı varsayalım.
  • SEVERITY_INFO önem derecesi, durumu bir hata durumunda olmadığını ve kurumun başka adımlar atmasını gerektirebilir.

Uygulamanıza anahtarlı uygulama durumları için destek ekleyin

Aşağıdaki adımlarda, anahtarlı uygulama durumlarını uygulamanıza nasıl entegre edeceğiniz açıklanmaktadır.

1. Adım: Google'ın Maven deposunu settings.gradle dosyanıza ekleyin

Google'ın Maven deposunu projenizin settings.gradle konumuna depo konumu olarak ekleyin dosyası olarak yükleyin:

dependencyResolutionManagement {
  repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
  repositories {
       google()
  }
}

2. Adım: Kurumsal geri bildirim kitaplığını modül düzeyindeki build.gradle dosyanıza ekleyin

Modül düzeyindeki build.gradle öğenize aşağıdaki bağımlılığı ekleyin dosya:

dependencies {
    implementation 'androidx.enterprise:enterprise-feedback:1.0.0'
}

3. Adım: KeyedAppStatesReporter örneği alın

onCreate() yönteminizde şunun bir örneğini alın ve depolayın: KeyedAppStatesReporter Bu, uygulamanız ve EMM sağlayıcıları arasında bir iletişim kanalı olmasını sağlar.

Kotlin

val reporter = KeyedAppStatesReporter.create(context)

Java

KeyedAppStatesReporter reporter = KeyedAppStatesReporter.create(context);

4. adım: Anahtarlı uygulama durumlarının bir koleksiyonu oluşturun

Anahtarlı uygulama durumları oluştururken aşağıda açıklanan en iyi uygulamaları takip edin:

  • Bir eyalette hiçbir zaman kimliği tanımlayabilecek bilgiler (PII) eklemeyin. Anahtarlı uygulama durumları hassas verilere uygun.
  • Anahtarlı uygulama durumlarını şurada tanımlanan sınırlar içinde tutun: MAX_KEY_LENGTH MAX_MESSAGE_LENGTH, ve MAX_DATA_LENGTH.
  • Tek bir setStates veya setStatesImmediate araması toplam 300 KB ile sınırlıdır (günlük olarak depolanabilen toplamın yaklaşık 1/3'ü). Bu değerin aşılması, tanımlanmamış davranışla sonuçlanır.
  • Durumun önem derecesini yalnızca şuna ayarlayın: SEVERITY_ERROR kuruluşun düzeltilmesi için işlem yapması gereken bir koşul varsa
  • Hata içeren bir uygulama durumu gönderirken mutlaka EMM'nin uygulamayı işaretlemeyi durdurabilmesi için hatalar giderildiğinde takip durumu kontrol edebilir.
  • Takip durumu için key öğesini bu hatayı döndüren ve önem derecesini SEVERITY_INFO.

Aşağıdaki snippet, anahtarlı uygulama durumlarının bir koleksiyonunu oluşturur:

Kotlin

    val states = hashSetOf(KeyedAppState.builder()
             .setKey("key")
             .setSeverity(KeyedAppState.SEVERITY_INFO)
             .setMessage("message")
             .setData("data")
             .build())
    

Java

    Collection states = new HashSet<>();
    states.add(KeyedAppState.builder()
     .setKey("key")
     .setSeverity(KeyedAppState.SEVERITY_INFO)
     .setMessage("message")
     .setData("data")
     .build());
    

5. adım: Anahtarlı uygulama durumlarını ayarlayın

setStates() yöntemi, anahtarlı uygulama durumlarını hemen Play Store uygulamasına gönderir (paket adı: com.android.vending) ve iş profili seçin.

Kotlin

keyedAppStatesReporter.setStates(states)

Java

keyedAppStatesReporter.setStates(states);

Anahtarlı uygulama durumlarını test etme

Ayrıntılı test talimatları için Test uygulaması geri bildirimi konusuna bakın.