App-Feedback an EMMs senden

Anbieter von Enterprise Mobility Management (EMM) bieten Lösungen für Unternehmen um Android-Geräte und die darauf installierten Apps zu verwalten. Diese Lösungen sind normalerweise als Webkonsolen, EMM-Konsolen genannt. Mit einem EMM können die IT-Administratoren Geräte- und App-Verwaltungsaufgaben im Namen des Unternehmens ausführen, Unternehmen.

Apps, die auf Unternehmen ausgerichtet sind, können EMMs Feedback in Form von verschlüsselte App-Statuswerte. Mit APIs können EMM-Anbieter verschlüsselte App-Statusdaten abrufen. die sie dann in ihrer EMM-Konsole anzeigen können. Dieser Kommunikationskanal können IT-Administratoren Feedback zum Status der installierten Apps erhalten. die Geräte verwalten, die sie verwalten.

Eine E-Mail-Client-App könnte beispielsweise verschlüsselte App-Status verwenden, um zu bestätigen, Konto erfolgreich konfiguriert, melden, wenn Synchronisierungsfehler auftreten, oder senden Sie andere Statusupdates, die der App-Entwickler für angemessen hält.

Komponenten eines verschlüsselten App-Status

Ein verschlüsselter App-Status setzt sich aus folgenden Elementen zusammen:

  • Schlüssel:Eindeutige Kennung für den App-Status. Maximal 100 Zeichen.
  • Nachricht: Optionale Nachricht, die den App-Status beschreibt. Maximum 1.000 Zeichen. Hinweis: In der Regel sind Nachrichten deutlich kürzer.
  • Daten:Optionaler maschinenlesbarer Wert für EMMs, der IT-Administratoren ermöglichen soll zum Einrichten von Benachrichtigungen oder Filtern auf Basis des Werts. Zum Beispiel könnte ein IT-Administrator eine Benachrichtigung einrichten, wenn das Datenfeld battery_percentage < 10 ist. Maximum 1.000 Zeichen.
  • Schweregrad : Der Schweregrad des App-Status. Zulässige Werte sind SEVERITY_ERROR und SEVERITY_INFO (Standard). Legen Sie nur den Schweregrad auf SEVERITY_ERROR fest für echte Fehlerbedingungen, die ein Unternehmen beheben muss.
  • Zeitstempel : Wenn ein bestätigter App-Status festgelegt wird, wird er automatisch mit einem Zeitstempel in Millisekunden seit Epoche.

Feedback zu verwalteten Konfigurationen senden

Wenn Ihre Anwendung verwaltete Konfigurationen unterstützt, Es wird empfohlen, verschlüsselte App-Status zu senden, um IT-Administratoren über die für die Konfiguration, die sie festgelegt haben. Im folgenden Beispielworkflow wird beschrieben, eine Möglichkeit, dies zu tun.

verschlüsselte App-Status für verwaltete Konfigurationen
  1. IT-Administratoren verwenden ihre EMM-Konsole, um verwaltete Konfigurationen für Eine App, die auf einem vollständig verwalteten Gerät installiert ist oder in einem Arbeitsprofil. Hier zwei Beispiele:
    • Lautstärke: „50 %“
    • Währung: USDD
  2. Die Anwendung versucht, die Konfigurationen anzuwenden. Die Lautstärke wurde eingestellt auf 50 % gesetzt, aber der Währungscode ist ungültig und kann nicht angewendet werden.
  3. Basierend auf dem Status der einzelnen Konfigurationen legt die App einen verschlüsselten App-Status fest. Jeder verschlüsselte App-Status enthält einen eindeutigen Schlüssel und eine Nachricht mit Details zum Bundesstaat. Wir empfehlen, den Schlüssel für verwaltete Konfigurationen nach Möglichkeit abzugleichen. Beispiel:
    Schlüssel Nachricht Wichtigkeit Zeitstempel
    volume Auf 50 % einstellen SEVERITY_INFO 1554461130
    currency Währung "USDD" nicht erkannt SEVERITY_ERROR 1554461130
  4. Der EMM-Anbieter ruft die von der App festgelegten verschlüsselten App-Status ab und zeigt in seiner EMM-Konsole. Beispiel:
    Konfiguration Status Aktion erforderlich Uhrzeit
    Lautstärke Auf 50 % einstellen Nein 5. April 2019 10:45:30 Uhr
    Währung FEHLER: Währung "USDD" nicht erkannt. Ja 5. April 2019 10:45:30 Uhr

    Der EMM-Anbieter sollte außerdem alle empfangenen Zustände explizit mit SEVERITY_ERROR an den IT-Administrator senden. IT-Administratoren können die Informationen in ihrer EMM-Konsole einsehen und um Fehler in den festgelegten Konfigurationen zu beheben.

Geklärte Fehler melden

Nachdem ein Fehler behoben wurde, senden Sie sofort einen Follow-up-App-Status an Verhindert, dass EMMs die Fehlermeldung unbegrenzt anzeigen. Dieses Follow-up sollte Folgendes enthalten:

  • Derselbe Schlüssel als ursprüngliche Fehlermeldung.
  • Schweregrad SEVERITY_INFO, was darauf hinweist, dass sich der Status nicht in einem Fehlerzustand befindet dass das Unternehmen weitere Maßnahmen ergreifen muss.

Einer App Unterstützung für verschlüsselte App-Status hinzufügen

In den folgenden Schritten wird beschrieben, wie Sie verschlüsselte App-Status in Ihre App einbinden.

Schritt 1: Maven-Repository von Google zur Datei settings.gradle hinzufügen

Fügen Sie das Maven-Repository von Google als Repository-Speicherort in der Datei settings.gradle Ihres Projekts hinzu. wie unten dargestellt:

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

Schritt 2: Der build.gradle-Datei auf Modulebene die Enterprise-Feedback-Bibliothek hinzufügen

Fügen Sie dem build.gradle auf Modulebene die folgende Abhängigkeit hinzu: Datei:

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

Schritt 3: Instanz von KeyedAppStatesReporter abrufen

Rufen Sie in der Methode onCreate() eine Instanz von KeyedAppStatesReporter Dadurch wird ein Kommunikationskanal zwischen Ihrer App und EMM-Anbietern ermöglicht.

Kotlin

val reporter = KeyedAppStatesReporter.create(context)

Java

KeyedAppStatesReporter reporter = KeyedAppStatesReporter.create(context);

Schritt 4: Sammlung verschlüsselter App-Status erstellen

Halten Sie sich beim Erstellen verschlüsselter App-Status an die unten aufgeführten Best Practices:

  • Geben Sie niemals personenidentifizierbare Informationen an. für sensible Daten geeignet.
  • Halten Sie den Status der verschlüsselten App innerhalb der in den MAX_KEY_LENGTH, MAX_MESSAGE_LENGTH, und MAX_DATA_LENGTH.
  • Ein einzelner setStates- oder setStatesImmediate-Aufruf ist auf insgesamt 300 KB beschränkt (ca. 1/3 der Gesamtmenge, die pro Tag gespeichert werden kann). Ein Überschreiten dieser Werte führt zu einem nicht definierten Verhalten.
  • Setzen Sie den Schweregrad eines Bundesstaates nur auf SEVERITY_ERROR wenn ein Unternehmen bestimmte Maßnahmen ergreifen muss, um es zu beheben.
  • Wenn Sie einen App-Status mit Fehlern senden, achten Sie darauf, dass Sie auch eine wenn die Fehler behoben sind, damit der EMM-Anbieter Fehler in ihrer Konsole auftreten.
  • Verwenden Sie für den Follow-up-Status key als den Anfangszustand, bei dem der Fehler zurückgegeben und der Schweregrad auf SEVERITY_INFO

Mit dem folgenden Snippet wird eine Sammlung verschlüsselter App-Status erstellt:

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());
    

Schritt 5: Status der verschlüsselten App festlegen

Die setStates() -Methode unmittelbar den verschlüsselten App-Status an die Play Store-App (Paketname: com.android.vending), sofern es auf dem Gerät installiert ist, sowie von allen Administratoren des oder das Arbeitsprofil.

Kotlin

keyedAppStatesReporter.setStates(states)

Java

keyedAppStatesReporter.setStates(states);

Entsperrte App-Status testen

Eine ausführliche Testanleitung findest du unter Feedback zu Test-Apps.