Kioskmodus in Android
Ich bin in den Prozess der Bewertung, ob und wie eine CF .NET-enterprise-Anwendung portiert werden können auf Android-Geräten ausgeführt. Die Anwendung auf Windows Mobile-Telefone laufen im kiosk-Modus, wo die autostart-Anwendung im fullscreen-Modus nach dem starten und mit dem Benutzer nicht versehentlich oder willentlich auf die anderen Teile des Telefons.
Ist es möglich auf Android, um nur eine Anwendung autostart nach dem Booten und verhindern, dass Benutzer versehentlich (oder willentlich) den Zugriff auf andere Teile des Android-Gerät?
InformationsquelleAutor der Frage Erik | 2010-01-14
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie autostart-Anwendungen auf Booten durch das hören der
android.intent.action.BOOT_COMPLETED
Absicht in einem BroadcastReceiver und starten Sie Ihre Aktivitäten von dort aus. In der Aktivität können Sie registrieren sich als neuen Standard-homescreen[1] und Griff in die Tasten.Ich denke, es gibt einige Instanzen, die man nicht umgehen kann ohne änderung der Rahmenbedingungen (wie longpress auf Home zeigen derzeit aktiven Anwendungen) - ich könnte auch falsch sein, obwohl.
Aber für einen Prototyp ausreichend sein könnte.
Spaß haben basteln!
[1]:
InformationsquelleAutor der Antwort Valentin
Könnte man anpassen, dies (Zugriff auf Menü -, limit-Anwendung neben etc) zum aktivieren des kiosk. http://code.google.com/p/android-launcher-plus/
InformationsquelleAutor der Antwort rbot
In der neuen Android-L-Vorschau, Google hat angekündigt Aufgabe Verriegelungdie genau das tut. Es scheint, benötigen Sie root jedoch.
InformationsquelleAutor der Antwort nhaarman
Nach der Suche nach diesem für eine Weile habe ich eine gute Lösung. Dies funktioniert nur auf verwurzelt Geräte zwar nicht, aber ich denke, wenn es nur für diese eine app dann wühlen, sollte es kein problem sein.
Ihre Anwendung die Startbildschirm durch hinzufügen
Ihre intent-filter
Stellen Sie sicher, dass Ihre app blendet die Symbolleiste, so dass Sie nicht erreichen kann die notification bar sehen Zum deaktivieren der Statusleiste /notification bar in android programmgesteuert? oder http://blog.vogella.com/2011/02/28/android-hidding-the-status-and-title-bar/
Dann beenden Sie alle anderen Programme öffnen, indem Sie Fehler verwenden, um eine Erreichbarkeit Service-check für Fenster-Zustand Geändert, vergleichen Sie das Paket zu einer weißen oder schwarzen Liste und verwenden Sie ActivityManager.killBackgroundProcesses zu töten, wenn es sollte nicht laufen.
Schauen Sie sich auch http://thebitplague.wordpress.com/2013/04/05/kiosk-mode-on-the-nexus-7/ für einen anderen Weg
InformationsquelleAutor der Antwort matt_lethargic
Einrichten von Single-Purpose-Geräte-Seite der android-Entwickler-beschrieben haben, diese Dinge, die Sie leicht bekommen kann, zu wissen, mehr Dinge von dort.
Nun ist es einfach zu konfigurieren Android 6.0 Marshmallow und später Geräte als " corporate-owned, single-use (COSU) - Geräte.
InformationsquelleAutor der Antwort Manifest
Fand eine weitere mögliche Technik in diesem forum-post. Zitieren, post:
http://www.basic4ppc.com/forum/basic4android-getting-started-tutorials/10839-android-kiosk-mode-tutorial.html
Es scheint ein Beispiel kiosk-Modus-code ZIP-Datei zum download zur Verfügung auch.
InformationsquelleAutor der Antwort Big Rich
Starten Sie Ihre app auf dem boot
der BESTE Weg, um dies zu erreichen, setzen Sie Ihre app als launcher
Sperren Sie Ihre app
der zuverlässigste Weg ist, um ein Gerät mit Lollipop oder höher und nutzen
zuerst müssen Sie Ihre app als Geräte-Besitzer. NB das Gerät muss nicht bereitgestelltes: wenn Sie registriert sind, so sollen Sie tun einen Werks-reset und überspringen Sie die Registrierung.
in der Lage sein, um Ihre app registrieren, müssen Sie zuerst das setup eine DeviceAdminReceiver Komponente:
sobald Sie ein nicht bereitgestelltes Gerät starten Sie den folgenden Befehl adb (keine Wurzel erforderlich)
zu vermeiden, android zu Fragen der Berechtigungen Benutzer-pin Ihre app, die Sie anrufen müssen
setLockTaskPackages
endlich!
InformationsquelleAutor der Antwort nonsensei
Google hat vor kurzem veröffentlicht die Android-Management-APIdie ermöglicht das einfache einrichten des kiosk-Modus für Android-Geräte mit Android 5.1 oder höher, und auch verschiedene andere Richtlinien.
InformationsquelleAutor der Antwort Fred
Xposed framework kann dies tun. Es braucht root und gibt es eine Möglichkeit, dass es nicht funktionieren auf allen Plattformen. Suchen deaktivieren() Methode in der Klasse android.app.StatusBarManager.
Hier im Android source code
Schauen Sie hier, wie Sie schreiben Sie Ihren eigenen Modul:
Xposed Entwicklung tutorial
Es ist viel einfacher, als man auf den ersten Blick denken. Viel Glück!
InformationsquelleAutor der Antwort JohnyTex
Zusammen mit der Einrichtung Ihrer Anwendung mit einer BOOT-Empfänger, und diese Antwort zur Verhinderung von status-bar-Erweiterung, diese Lösung funktioniert auf 4.4 und höher als eine komplette kiosk-app :
Platz in Ihrer onCreate():
Diese vollständig auszublenden die zurück-Taste, apps und home-Taste.
InformationsquelleAutor der Antwort Kristy Welsh