Many Android applications exit the program with two consecutive clicks of the return key, with the following code:
Private LongExittime = 0; @Override Public BooleanOnKeyDown (intKeyCode, KeyEvent event) { if(KeyCode = = Keyevent.keycode_back && event.getaction () = =Keyevent.action_down) { if((System.currenttimemillis ()-exittime) > 2000) {Toast.maketext (Getapplicationcontext (),"Press one more time to exit the program", Toast.length_short). Show (); Exittime=System.currenttimemillis (); } Else{finish (); System.exit (0); } return true; } return Super. OnKeyDown (KeyCode, event);}
Reference Link: "Press the back key to exit the program" in Android implementation
In addition, it was mentioned that the solution on Stack Overflow, there are many, did not look closely, here first put the link out: android:clicking twice the back button to exit activity
The former encountered some problems when it was used: the application exited and restarted!
Internet search found that there is a statement is: There is Activity did not finish.
Sure enough, this may be a single finish () method is insufficient to finish all the Activity, can write a method to implement, the Code is as follows (for reference only):
Private Static Stack<activity> Activitystack; publicvoid finishallactivity () { for (int i = 0, size = Activitystack.size (); i < size; i++) { if (null ! = Activitystack.get (i)) { activitystack.get (i). Finish (); } } Activitystack.clear (); }
After doing this, the problem is solved ~
"Android" system.exit (0) Exit program