The above two functions mainly refer to the blog:
Http://blog.csdn.net/chenshijun0101/article/details/7682210
Http://blog.csdn.net/winlinking/article/details/6596455
Method 1:
Press the return key twice to exit the program:
Public class exit {
private boolean isExit = false;private Runnable task = new Runnable() {@Overridepublic void run() {isExit = false;}};public void doExitInOneSecond() {isExit = true;HandlerThread thread = new HandlerThread("doTask");thread.start();new Handler(thread.getLooper()).postDelayed(task, 1000);}public boolean isExit() {return isExit;}public void setExit(boolean isExit) {this.isExit = isExit;}}
Activity:
Public class back2finishappactivity extends activity {exit = new exit ();/** called when the activity is first created. * // @ override public void oncreate (bundle savedinstancestate) {super. oncreate (savedinstancestate); setcontentview (R. layout. main) ;}@ override public Boolean onkeydown (INT keycode, keyevent event) {If (keycode = keyevent. keycode_back) {pressagainexit (); Return true;} return Super. onkeydown (keycode, event);} private void pressagainexit () {If (exit. isexit () {finish ();} else {toast. maketext (getapplicationcontext (), "exit the program again", toast. length_short ). show (); exit. doexitinonesecond ();}}}
Long press the return key to exit the program:
public boolean dispatchKeyEvent(KeyEvent event) { int keyCode=event.getKeyCode(); switch(keyCode) { case KeyEvent.KEYCODE_BACK: { if(event.isLongPress()) { this.stopService(intent); System.exit(0); return true; }else { return false; } } } return super.dispatchKeyEvent(event); }
Method 2:
- Private long exittime = 0;
-
- @ Override
- Public Boolean onkeydown (INT keycode, keyevent event ){
- If (keycode = keyevent. keycode_back & event. getaction () = keyevent. action_down ){
- If (system. currenttimemillis ()-exittime)> 2000 ){
- Toast. maketext (getapplicationcontext (), "exit the program once again", Toast. length_short). Show ();
- Exittime = system. currenttimemillis ();
- } Else {
- Finish ();
- System. Exit (0 );
- }
- Return true;
- }
- Return super. onkeydown (keycode, event );
- }
Welcome reprinted: http://blog.csdn.net/johnny901114/article/details/7823048