Anbieter von Enterprise Mobility Management (EMM) bieten Unternehmen Lösungen zur Verwaltung von Android-Geräten und den darauf installierten Apps an. Diese Lösungen sind in der Regel als Webkonsolen verfügbar, die als EMM-Konsolen bezeichnet werden. Mithilfe einer EMM-Konsole führen IT-Administratoren im Namen ihrer Organisation Geräte- und App-Verwaltungsaufgaben aus.
Apps, die auf Unternehmen ausgerichtet sind, können Feedback in Form von Schlüssel-App-Status an EMMs senden. Mit APIs können EMMs verschlüsselte App-Statusdaten abrufen, die dann in ihrer EMM-Konsole angezeigt werden können. Über diesen Kommunikationskanal erhalten IT-Administratoren Feedback zum Status der Anwendungen, die auf den von ihnen verwalteten Geräten installiert sind.
Eine E-Mail-Client-Anwendung könnte beispielsweise verschlüsselte Anwendungsstatus verwenden, um zu bestätigen, dass ein Konto erfolgreich konfiguriert wurde, um zu melden, wenn Synchronisierungsfehler auftreten, oder um andere Statusaktualisierungen zu senden, die der App-Entwickler für angemessen hält.
Komponenten eines verschlüsselten Anwendungsstatus
Ein verschlüsselter Anwendungsstatus besteht aus Folgendem:
- Schlüssel:Eindeutige Kennung für den App-Status. Maximal 100 Zeichen.
- Nachricht:Optionale Nachricht, die den Anwendungsstatus beschreibt. Maximal 1.000 Zeichen. Hinweis: In der Regel sind die Nachrichten deutlich kürzer.
- Daten: Optionaler maschinenlesbarer Wert für EMMs, mit dem IT-Administratoren Warnungen oder Filter basierend auf dem Wert einrichten können. Beispielsweise könnte ein IT-Administrator eine Benachrichtigung einrichten, wenn das Datenfeld
battery_percentage < 10
. Maximal 1.000 Zeichen. - Schweregrad : Der Schweregrad des App-Status. Zulässige Werte sind
SEVERITY_ERROR
undSEVERITY_INFO
(Standardwert). Legen Sie den Schweregrad nur bei echten Fehlerbedingungen aufSEVERITY_ERROR
fest, die eine Organisation beheben muss. - Zeitstempel : Wenn ein verschlüsselter Anwendungsstatus festgelegt ist, wird er automatisch mit einem Zeitstempel in Millisekunden seit der Epoche gesendet.
Feedback zu verwalteten Konfigurationen senden
Wenn Ihre App verwaltete Konfigurationen unterstützt, empfehlen wir, Schlüsselanwendungsstatus zu senden, um IT-Administratoren über den Status der von ihnen festgelegten Konfigurationen zu informieren. Im folgenden Beispielworkflow wird eine Möglichkeit dazu beschrieben.
- IT-Administratoren verwenden die EMM-Konsole zum Festlegen und Senden verwalteter Konfigurationen für eine App, die auf einem vollständig verwalteten Gerät oder in einem Arbeitsprofil installiert ist.
Hier zwei Beispiele:
- Lautstärke: „50 %“
- Währung: USDD
- Die App versucht, die Konfigurationen anzuwenden. Das Volumen wurde auf 50 % eingestellt, aber der Währungscode ist ungültig und kann nicht angewendet werden.
- Basierend auf dem Status der jeweiligen Konfiguration legt die App einen verschlüsselten App-Status fest.
Jeder verschlüsselte Anwendungsstatus enthält einen eindeutigen Schlüssel und eine Nachricht mit Details zum Status. Wir empfehlen, den Schlüssel für verwaltete Konfigurationen nach Möglichkeit abzugleichen.
Beispiele:
Schlüssel die Botschaft und Wichtigkeit Zeitstempel volume
Auf 50 % festlegen SEVERITY_INFO
1554461130
currency
Die Währung 'USDD' wurde nicht erkannt SEVERITY_ERROR
1554461130
- Der EMM-Anbieter ruft die von der App festgelegten verschlüsselten App-Status ab und zeigt sie in der EMM-Konsole an. Beispiele:
Konfiguration Status Wichtige Informationen Uhrzeit Lautstärke Auf 50 % festlegen Nein 5. April 2019; 10:45:30 Uhr Währung FEHLER: Die Währung 'USDD' wurde nicht erkannt. Ja 5. April 2019; 10:45:30 Uhr Der EMM-Anbieter sollte empfangene Status außerdem explizit mit
SEVERITY_ERROR
an den IT-Administrator melden. IT-Administratoren können die Informationen in ihrer EMM-Konsole ansehen und Maßnahmen ergreifen, um Fehler in den von ihnen festgelegten Konfigurationen zu beheben.
Behobene Fehler melden
Nachdem ein Fehler behoben wurde, solltest du sofort einen Folgestatus der App senden, damit EMMs die Fehlermeldung nicht auf unbestimmte Zeit anzeigen. Dieser Follow-up-Status sollte Folgendes umfassen:
- Derselbe Schlüssel wie bei der ursprünglichen Fehlermeldung.
- Ein Schweregrad von
SEVERITY_INFO
, der angibt, dass sich der Status nicht in einem Fehlerzustand befindet und die Organisation keine weiteren Maßnahmen ergreifen muss.
Unterstützung für verschlüsselte App-Status zu deiner App hinzufügen
In den folgenden Schritten wird beschrieben, wie Sie verschlüsselte App-Status in Ihre App einbinden.
Schritt 1: Der Datei settings.gradle
das Maven-Repository von Google hinzufügen
Fügen Sie in der Datei settings.gradle
Ihres Projekts das Maven-Repository von Google als Repository-Speicherort hinzu, wie unten gezeigt:
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() } }
Schritt 2: Der build.gradle
-Datei auf Modulebene die Feedbackbibliothek für Unternehmen hinzufügen
Fügen Sie der Datei build.gradle
auf Modulebene die folgende Abhängigkeit hinzu:
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
ab und speichern Sie sie.
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
Folgen Sie den unten aufgeführten Best Practices, wenn Sie verschlüsselte App-Status erstellen:
- Gib in einem Bundesstaat nie personenidentifizierbare Informationen (PII) an, da verschlüsselte App-Status nicht für sensible Daten geeignet sind.
- Behalte die App-Status innerhalb der Limits in
MAX_KEY_LENGTH
,MAX_MESSAGE_LENGTH
undMAX_DATA_LENGTH
. - Ein einzelner
setStates
- odersetStatesImmediate
-Aufruf ist auf insgesamt 300 KB beschränkt (ca. 1/3 der Datenmenge, die pro Tag gespeichert werden kann). Das Überschreiten dieses Wertes führt zu einem nicht definierten Verhalten. - Legen Sie den Schweregrad eines Status nur auf
SEVERITY_ERROR
fest, wenn eine Bedingung vorhanden ist, die eine Organisation beheben muss. - Wenn du einen App-Status mit Fehlern sendest, musst du auch einen Folgestatus senden, wenn die Fehler behoben wurden, damit der EMM die Fehler nicht mehr in der Konsole melden kann.
- Verwenden Sie für den Folgestatus denselben Schlüssel wie für den Ausgangszustand, bei dem der Fehler zurückgegeben wurde, und legen Sie den Schweregrad auf
SEVERITY_INFO
fest.
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
Collectionstates = new HashSet<>(); states.add(KeyedAppState.builder() .setKey("key") .setSeverity(KeyedAppState.SEVERITY_INFO) .setMessage("message") .setData("data") .build());
Schritt 5: Schlüsselbasierte App-Status festlegen
Die Methode setStates()
sendet sofort verschlüsselte App-Status an die Play Store App (Paketname: com.android.vending
), wenn sie auf dem Gerät installiert ist, sowie an Administratoren des Geräts oder Arbeitsprofils.
Kotlin
keyedAppStatesReporter.setStates(states)
Java
keyedAppStatesReporter.setStates(states);