2013-04-07 7 views
5

Ho un'applicazione Android che verrà utilizzata in un ristorante, quindi voglio che gli utenti non possano uscire dall'app. L'unica cosa che gli utenti possono, sta usando l'applicazione.Android - Impedisci all'utente di chiudere l'app

(Se possibile, solo l'amministratore può uscire dall'app, accedendo o riavviando il dispositivo, non so quale sia il modo migliore).

Esiste una soluzione o un altro modo per farlo?

Grazie mille!

+0

non riesco a pensare di qualsiasi scenario in cui l'utente non deve essere in controllo del suo dispositivo o l'applicazione. Inoltre, in casi estremi, l'utente può semplicemente spegnere il dispositivo (tirare la batteria) e riavviare il dispositivo senza riavviare nuovamente la suddetta app. –

+0

@MasterChief vuole usare l'applicazione all'interno del ristorante dove non vuole che i suoi operai giochino a uccelli arrabbiati usando un nuovo telefono Android mentre funziona! fatto ? – k0sh

+0

@StyleMe Hai capito! ;) Non per i lavoratori ma per i clienti. I clienti possono vedere il menu del ristorante sul tablet; il dispositivo non è il loro smartphone/tablet, ma è il mio – Nerd

risposta

1

si può override la onBackPressed metodo

@Override 
public void onBackPressed(){ 
    Toast.MakeText(getApplicationContext(),"You Are Not Allowed to Exit the App", Toast.LENGTH_SHORT).show(); 
} 

ciò impedirà il pulsante posteriore di uscire dall'applicazione.

e quindi è necessario override la home button così come

public boolean onKeyDown(int keyCode, KeyEvent event) { 
    if (keyCode == KeyEvent.KEYCODE_HOME) { 
     Log.i("TEST", "Home Button"); // here you'll have to do something to prevent the button to go to the home screen 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
} 

EDIT: per i nuovi dispositivi con Android versione 4.0.xx dovrete override la recent apps button così speranza che ti aiuta.

+0

Il codice del "tasto home sovrascritto" appartiene all'app o all'app HomeScreen? –

+0

App, questo codice pubblicato l'anno scorso quindi non posso garantire che funzioni ora. – k0sh