Unterstützung mehrerer Benutzer

Android unterstützt mehrere Benutzer auf einem einzigen Android-Gerät, indem Benutzerkonten und Anwendungsdaten getrennt werden. Zum Beispiel können Eltern ihren Kindern erlauben, das Familien-Tablet zu benutzen, eine Familie kann ein Auto teilen oder ein kritisches Reaktionsteam könnte ein mobiles Gerät für den Bereitschaftsdienst teilen.

Terminologie

Android verwendet bei der Beschreibung von Android-Benutzern und -Konten die folgenden Begriffe.

Allgemein

Die Android-Geräteverwaltung verwendet die folgenden allgemeinen Begriffe.

  • Benutzer. Jeder Nutzer soll durch eine andere natürliche Person verwendet werden. Jeder Benutzer hat unterschiedliche Anwendungsdaten und einige einzigartige Einstellungen sowie eine Benutzeroberfläche, um explizit zwischen Benutzern zu wechseln. Ein Benutzer kann im Hintergrund ausgeführt werden, wenn ein anderer Benutzer aktiv ist; das System verwaltet das Herunterfahren von Benutzern, um Ressourcen zu sparen, wenn dies angemessen ist. Secondary - Benutzer können entweder direkt über die Benutzeroberfläche oder von einem erstellt werden Device Administration Anwendung.
  • Konto. Konten sind in einem Benutzer enthalten, werden jedoch nicht von einem Benutzer definiert, noch wird ein Benutzer von einem bestimmten Konto definiert oder mit diesem verknüpft. Benutzer und Profile enthalten ihre eigenen eindeutigen Konten, müssen jedoch keine Konten haben, um funktionsfähig zu sein. Die Liste der Konten unterscheidet sich je nach Benutzer. Weitere Einzelheiten finden Sie in der Kontoklassendefinition.
  • Profil. Ein Profil enthält getrennte App-Daten, teilt jedoch einige systemweite Einstellungen (z. B. Wi-Fi und Bluetooth). Ein Profil ist eine Teilmenge der Existenz eines Benutzers und an diese gebunden. Ein Benutzer kann mehrere Profile haben. Die Profile werden durch eine erstellte Device Administration Anwendung. Ein Profil hat immer eine unveränderliche Zuordnung zu einem übergeordneten Benutzer, der von dem Benutzer definiert wird, der das Profil erstellt hat. Profile existieren nicht über die Lebensdauer des erstellenden Benutzers hinaus.
  • App. Die Daten einer Anwendung sind in jedem zugeordneten Benutzer vorhanden. App-Daten werden aus anderen Anwendungen innerhalb desselben Benutzers in einer Sandbox abgelegt. Apps innerhalb desselben Benutzers können über IPC miteinander interagieren. Weitere Einzelheiten finden Sie in Android für Unternehmen .

Kategorien von Benutzern

Die Android-Geräteverwaltung verwendet die folgenden Benutzerkategorien.

  • Systembenutzer. Erster Benutzer, der einem Gerät hinzugefügt wurde. Der Systembenutzer kann nur durch Zurücksetzen auf die Werkseinstellungen entfernt werden und läuft immer, auch wenn andere Benutzer im Vordergrund sind. Dieser Benutzer hat auch spezielle Privilegien und Einstellungen, die nur er festlegen kann.
  • Sekundäre Benutzer. Jeder Benutzer, der dem Gerät hinzugefügt wurde, außer dem Systembenutzer. Sekundäre Benutzer können entfernt werden (entweder selbst oder von einem Admin-Benutzer) und haben keinen Einfluss auf andere Benutzer auf einem Gerät. Diese Benutzer können im Hintergrund ausgeführt werden und haben weiterhin eine Netzwerkverbindung.
  • Gastbenutzer. Temporärer sekundärer Benutzer. Gastbenutzer haben eine explizite Option, um den Gastbenutzer schnell zu löschen, wenn seine Nützlichkeit vorbei ist. Es kann jeweils nur ein Gastbenutzer vorhanden sein.
  • Admin - Benutzer. Ein Benutzer, der über die Berechtigung zum Erstellen und Entfernen anderer Benutzer sowie zum Steuern einiger allgemeiner Mehrbenutzereinstellungen verfügt. Standardmäßig ist nur der Systembenutzer ein Administrator.

Kategorien von Profilen

Die Android-Geräteverwaltung verwendet die folgenden Profilkategorien.

  • Managed Profil. Von einer Anwendung erstellt, um Arbeitsdaten und Apps zu enthalten. Sie werden ausschließlich vom Profilbesitzer verwaltet (der App, die das Unternehmensprofil erstellt hat). Launcher, Benachrichtigungen und letzte Aufgaben werden vom übergeordneten Benutzer und dem Unternehmensprofil geteilt.
  • Restricted Profil. Verwendet Konten basierend auf dem übergeordneten Benutzer, der steuern kann, welche Apps im eingeschränkten Profil verfügbar sind. Nur auf Tablets und Fernsehgeräten verfügbar.

Benutzertypen

Android 11 hat die obige Klassifizierung von Benutzern und Profile in gut definierte Benutzertypen formuliert, alle verschiedenen Arten von Benutzern darstellen , und durch die Android erlaubt Profile Multi-User - Funktion.

Die vordefinierten AOSP Benutzertypen sind definiert in frameworks/base/core/java/android/os/UserManager.java und umfassen derzeit:

  • android.os.usertype.full.SYSTEM
  • android.os.usertype.full.SECONDARY
  • android.os.usertype.full.GUEST
  • android.os.usertype.full.DEMO
  • android.os.usertype.full.RESTRICTED
  • android.os.usertype.profile.MANAGED
  • android.os.usertype.system.HEADLESS

OEMs haben die Möglichkeit , diese Benutzertypen zu konfigurieren , indem Sie die Überlagerung frameworks/base/core/res/res/xml/config_user_types.xml Datei. Dies erleichtert das Ändern der Standardkonfiguration für jeden Benutzertyp, einschließlich der Standardbeschränkungen, Symbole, Badges und der maximal zulässigen Anzahl von Benutzern.

Verwendung der zusätzlich zu den konfigurierbaren AOSP Benutzertypen können OEMs neue Profiltypen definieren frameworks/base/core/res/res/xml/config_user_types.xml Datei. Auf diese Weise können OEMs auf Wunsch ihre eigenen nicht verwalteten Profiltypen einführen. Es liegt jedoch in der Verantwortung des OEMs, Plattformänderungen nach Bedarf vorzunehmen, um die Änderungen zu unterstützen, einschließlich der Änderung von Code, der nach verwalteten Profilen sucht, um jetzt gegebenenfalls den neuen Profiltyp zu verarbeiten.

Aktivieren mehrerer Benutzer

Ab Android 5.0 ist die Multi-User-Funktion standardmäßig deaktiviert. So aktivieren Sie die Funktion, Gerätehersteller muss eine Ressource Overlay definieren , die die folgenden Werte in ersetzt frameworks/base/core/res/res/values/config.xml :

<!--  Maximum number of supported users -->
<integer name="config_multiuserMaximumUsers">1</integer>
<!--  Whether Multiuser UI should be shown -->
<bool name="config_enableMultiUserUI">false</bool>

Um dieses Overlay anwenden und Gast und sekundären Benutzer auf dem Gerät aktivieren, verwenden die DEVICE_PACKAGE_OVERLAYS des Android - Build - System verfügen , die Werte zu ersetzen:

  • config_multiuserMaximumUsers mit einem Wert größer als 1
  • config_enableMultiUserUI mit true

Gerätehersteller können die maximale Anzahl von Benutzern festlegen. Wenn Gerätehersteller oder andere haben Einstellungen geändert haben , müssen sie SMS und Telefonie gewährleisten Arbeit wie in der definierten Android Compatibility Definition Document (CDD).

Mehrere Benutzer verwalten

Verwaltung von Benutzern und Profilen (mit Ausnahme von eingeschränkten Profilen) wird von Anwendungen ausgeführt , die programmatisch invoke API in der DevicePolicyManager Klasse Verwendung zu beschränken.

Schulen und Unternehmen können beschäftigen Benutzer und Profile , um die Lebensdauer und den Umfang der Anwendungen und Daten auf Geräten zu verwalten, die Typen skizziert oben in Verbindung mit der Verwendung von Usermanager API einzigartige Lösungen zu bauen , um ihre Anwendungsfälle zugeschnitten.

Systemverhalten bei mehreren Benutzern

Wenn Benutzer zu einem Gerät hinzugefügt werden, werden einige Funktionen eingeschränkt, wenn sich ein anderer Benutzer im Vordergrund befindet. Da App-Daten nach Benutzern getrennt sind, unterscheidet sich der Status dieser Apps je nach Benutzer. E-Mails, die für ein Konto eines Benutzers bestimmt sind, der derzeit nicht im Fokus ist, sind beispielsweise erst verfügbar, wenn dieser Benutzer und dieses Konto auf dem Gerät aktiv sind.

Standardmäßig hat nur der Systembenutzer vollen Zugriff auf Telefonanrufe und SMS. Der sekundäre Benutzer kann eingehende Anrufe empfangen, aber keine Texte senden oder empfangen. Ein Admin-Benutzer muss diese Funktionen für andere aktivieren.

Hinweis: Zum Aktivieren oder das Telefon und SMS - Funktionen für einen sekundären Benutzer zu deaktivieren, gehen Sie zu Einstellungen> Benutzer, wählen Sie den Benutzer, und schalten Sie das zulassen Anrufe und SMS - Einstellung ab.

Es gibt einige Einschränkungen, wenn ein sekundärer Benutzer im Hintergrund ist. Der sekundäre Benutzer im Hintergrund kann beispielsweise die Benutzeroberfläche nicht anzeigen oder Bluetooth-Dienste aktivieren. Darüber hinaus hält der Systemprozess sekundäre Hintergrundbenutzer an, wenn das Gerät zusätzlichen Speicher für Operationen im Vordergrundbenutzer benötigt.

Beachten Sie bei der Beschäftigung mehrerer Benutzer auf einem Android-Gerät das folgende Verhalten:

  • Benachrichtigungen werden für alle Konten eines einzelnen Benutzers gleichzeitig angezeigt.
  • Benachrichtigungen für andere Benutzer werden erst angezeigt, wenn sie aktiv sind.
  • Jeder Benutzer erhält einen Arbeitsbereich zum Installieren und Platzieren von Apps.
  • Kein Benutzer hat Zugriff auf die App-Daten eines anderen Benutzers.
  • Jeder Benutzer kann die installierten Apps für alle Benutzer beeinflussen.
  • Ein Admin-Benutzer kann Apps oder sogar den gesamten Arbeitsbereich entfernen, der von sekundären Benutzern eingerichtet wurde.

Android 7.0 enthält mehrere Verbesserungen, darunter:

  • Toggle Arbeitsprofil. Benutzer können ihr verwaltetes Profil deaktivieren (z. B. wenn sie nicht bei der Arbeit sind). Diese Funktionalität wird erreicht, indem der Benutzer gestoppt wird; UserManagerService ruft ActivityManagerNative#stopUser() .
  • Always-on - VPN. VPN-Anwendungen können jetzt vom Benutzer, Geräte-DPC oder Managed-Profile-DPC (gilt nur für Managed-Profile-Anwendungen) auf Always-on eingestellt werden. Wenn diese Option aktiviert ist, können Anwendungen nicht auf das öffentliche Netzwerk zugreifen (der Zugriff auf Netzwerkressourcen wird gestoppt, bis das VPN eine Verbindung hergestellt hat und Verbindungen darüber geleitet werden können). Geräte dieser Bericht device_admin müssen always-on VPN implementieren.

Weitere Details zu Android 7.0 Geräteverwaltung Funktionen finden Sie in Android für Arbeit .

Android Automotive Multi-User

Android Automotive verlässt sich auf die Multi-User-Implementierung von Android, um ein gemeinsames Geräteerlebnis zu bieten.

Benutzertypen in der Automobilindustrie

Zusätzlich zu den oben aufgeführten Benutzertypen sind Automotive-Builds für diese Benutzertypen bemerkenswert:

  • Benutzer des kopflosen Systems. Der Systembenutzer hostet alle Systemdienste. Um mehrere Benutzer auf Automotive, der Systembenutzer unterstützen muss ohne Kopf auch. Es gibt nur einen kopflosen Benutzer. Ein kopfloser Systembenutzer:
    • Muss immer im Hintergrund laufen.
    • Kann vom Benutzer nicht entfernt oder direkt darauf zugegriffen werden, außer im Fall der Gerätebereitstellung. Benutzer können beispielsweise nicht zu diesem Benutzertyp wechseln, um Aufgaben wie das Herunterladen von Apps oder das Hinzufügen von Konten auszuführen.
    • Kann nur durch einen Werksreset gelöscht werden.
  • Regelmäßige Benutzer. Das gleiche wie Secondary Benutzer , wie oben beschrieben, mit der Ausnahme , dass sekundäre Benutzer:
    • Laufen Sie nicht im Hintergrund (nach dem Ausschalten).
    • Kann direkt über die Benutzeroberfläche erstellt werden.
    • Haben Sie getrennte App-Daten, teilen Sie jedoch einige systemweite Einstellungen. Zum Beispiel WLAN und Bluetooth.

Vorbehalte

Die folgenden Ausnahmen gelten für Headless-Systembenutzer und reguläre (sekundäre) Benutzer in der Automobilindustrie:

  • Der Benutzer des Headless-Systems unterstützt keine Arbeitsprofile.
  • Standardmäßig haben normale (sekundäre) Benutzer vollen Zugriff auf Telefonanrufe und Textnachrichten.
  • Standardmäßig werden normale (sekundäre) Benutzer nicht im Hintergrund ausgeführt.

Aktivieren des Headless-Systembenutzers

Ab Android 10 kann die Multi-User-Funktion für automobile Anwendungsfälle genutzt werden. Wichtige Unterscheidungen sind:

  • Der Systembenutzer ist kopflos und läuft nur im Hintergrund.
  • Menschliche Benutzer interagieren nicht mit dem Systembenutzer.

Um den Benutzer des kopflosen Systems zu aktivieren, müssen die Gerätehersteller die Mehrbenutzerfunktion wie oben beschrieben aktivieren.

Wenn der kopflose Benutzer aktiviert ist:
  1. Um das Gerät zu erklären Automobil zu sein, fügen Sie die Funktion android.hardware.type.automotive .
  2. Set ro.fw.headless_system_user zu true .
  3. Setzen Sie den Wert für config_multiuserMaximumUsers auf 2 (oder höher).

Weitere Informationen finden Sie Multi-User - Support in Automotive.