In dieser StackOverflow-Frage wird erläutert, wie Sie eine Geräteinhaber-App und damit den Kioskmodus in der Android L-Entwicklervorschau aktivieren. Da für die Methode ein Userdebug-Build von Android, das Rooten des Geräts und das Kopieren einer XML-Datei in das Root-Dateisystem erforderlich ist, scheint sie nicht für die Massenbereitstellung eines Android-Geräts mit nur einer Funktion in einem Unternehmen geeignet zu sein.
Wie werden Geräteinhaber-Apps auf Android L-Produktionsgeräten installiert?
kiosk-mode
5.0-lollipop
Adrian Cox
quelle
quelle
Antworten:
( Bearbeiten: Nach einigen weiteren Tests aktualisiert)
Überprüfen Sie die neueste Dokumentation .
Diese Funktion wird anscheinend als "Screen Pinning" bezeichnet, und die App muss nicht mehr der Gerätebesitzer sein. Wenn der Geräteeigentümer nicht festgelegt ist, wird der Benutzer aufgefordert, zu akzeptieren. Es gibt jedoch Probleme bei der Nutzung des Kiosks, die weiter unten erwähnt werden.
Wenn Sie das Anheften des Bildschirms programmgesteuert (App ohne Geräteeigentümer) oder auf dem Gerät mithilfe des in den letzten Abschnitten angegebenen Stifts aktivieren, tritt folgendes Verhalten auf:
Es wird ein Dialogfeld angezeigt, in dem der Benutzer gefragt wird, ob das Anheften des Bildschirms aktiviert werden soll und ob zum Beenden ein Kennwort erforderlich ist. Wenn sie auf "Ja" klicken, werden die Statusleiste und die Benachrichtigungen ausgeblendet. Die Schaltflächen "Zurück", "Startseite" und "Letzte" werden NICHT ausgeblendet. Wenn Sie auf "Zuhause" oder "Neu" tippen, wird ein Toast angezeigt, der den Benutzer darüber informiert, wie das Fixieren des Bildschirms beendet wird.
Der Benutzer kann dann die Taste gedrückt halten, um das Fixieren des Bildschirms zu beenden. Wenn der Benutzer ein Passwort verlangt, wird er direkt zum Sperrbildschirm geführt. Dieses Verhalten bedeutet, dass es nicht für einen Kiosk imo geeignet ist. Da es für Kioskbenutzer zu einfach ist, auf den Sperrbildschirm zu schauen.
Um einen ordnungsgemäßen Kioskmodus zu erhalten, müssen wir den Geräteeigentümer festlegen. Die Dokumentation von Google besagt, dass Sie dies mit NFC tun müssen:
Die Verwendung von NFC zu diesem Zweck erscheint etwas komplex (was ist, wenn ein Gerät nicht über NFC verfügt?). Ich habe dies noch nicht untersucht. Kann also jemand Informationen darüber bereitstellen, wie Sie den Geräteeigentümer über NFC festlegen? Welches wird jetzt der Hauptpunkt Ihrer Frage. (dh Festlegen des Gerätebesitzers auf einem nicht gerooteten Gerät)
Aber das Verhalten zu bestätigen , ist wie erwartet , wenn Sie ein Gerät verankern Sie das Gerät Eigentümer als pro Googles vorherige Anweisungen einstellen ( das Hinzufügen eines device_owner.xml) wie ich bereits erwähnt hier
Jetzt können Sie die App ordnungsgemäß sperren. Es wird kein Dialogfeld mehr angezeigt, das der Benutzer akzeptieren kann. Wenn diese Option aktiviert ist, werden die Schaltflächen "Letzte" und "Startseite" ausgeblendet, und der Benutzer kann die App nur verlassen, wenn sich die App selbst entsperrt. Ein richtiger Kiosk-Modus. Ich habe dies auf einem Nexus 7 2013 mit dem neuesten Lollipop-Build getestet.
Das folgende Snippet aktiviert die Sperre:
quelle
Ich kann keine Antwort kommentieren, die ein bisschen lästig ist, aber die Antwort von tagy22 ergänzt, mit der Sie
dpm
den Geräteeigentümer festlegen können . Weitere Details hier .quelle
dpm
würde den Job nicht erledigen, wenn auf dem Gerät ein Konto (z. B. ein Google-Konto) eingerichtet ist.