14 Stimmen

Wie kann ich verhindern, dass der Benutzer meine App schließt?

Ich habe eine Android-Anwendung, die in einem Restaurant verwendet wird, daher möchte ich, dass Benutzer die App nicht verlassen können. Das einzige, was Benutzer können, ist die Anwendung zu verwenden.

(Wenn möglich, kann nur der Administrator die App verlassen, indem er sich anmeldet oder das Gerät neu startet, ich weiß nicht, welcher Weg der beste ist).

Gibt es eine Lösung oder einen anderen Weg, dies zu tun?

3voto

Munawar Manzoor Punkte 69

Android bietet nur eine Rücktaste-Überschreibungsfunktion. Benutzer können die Home-Taste und die Taste für zuletzt geöffnete Apps nicht deaktivieren.

Aber wir können den Startbildschirm durch unsere Anwendung ersetzen, indem wir unsere Anwendung zuerst als Launcher auswählen. Wenn der Benutzer die Home-Taste drückt, wird der Startbildschirm durch unsere Anwendung ersetzt und es wird nur unsere Anwendung geöffnet. Fügen Sie dazu diese Zeilen in die Manifest-Datei ein:

2voto

Kosh Punkte 5863

Sie können die Methode onBackPressed überschreiben

@Override 
public void onBackPressed(){  
  Toast.MakeText(getApplicationContext(),"Sie dürfen die App nicht verlassen", Toast.LENGTH_SHORT).show();
}

Dadurch wird verhindert, dass die Zurück-Taste die Anwendung verlässt.

Dann müssen Sie auch den Home-Button überschreiben, wie folgt

public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_HOME) {
        Log.i("TEST", "Home Button");  // Hier müssen Sie etwas tun, um zu verhindern, dass der Button zum Startbildschirm zurückkehrt
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

BEARBEITEN: Für neue Geräte mit Android-Version 4.0.xx müssen Sie auch die Recent-Apps-Taste überschreiben. Hoffentlich hilft Ihnen das.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X