프로그램 종료 코드를 두 번 연속으로 누르십시오

오늘 두 번 연속으로 종료하는 코드를 만들었는데, 매우 유용하다. 볼 수 있다
또한dispatchKey Event는 감청할 때 누르는 조작을 감청할 뿐만 아니라 핸드폰이 떠나는 조작도 감청할 수 있다. 이것이 바로 어떤 친구들이 한 번 눌렀다는 것을 발견했다. 이 방법이 두 번 실행된 이유다. 해결 방법은 손가락을 들어 올리는 조작을 금지하는 것이다. 코드는 다음과 같다.getAction() !=KeyEvent.ACTION_UP, 판단 조건에 이 한마디를 더하면 돼요.
다음은 연속으로 두 번의 종료 키, 프로그램을 종료하는 코드입니다.
long flag= -1;
	@Override
	public boolean dispatchKeyEvent(KeyEvent event) {
		if (event.getKeyCode() == KeyEvent.KEYCODE_BACK && event.getAction() != KeyEvent.ACTION_UP) {
			if (flag == -1||System.currentTimeMillis() - flag >2000) {
				Toast.makeText(this, "       ", Toast.LENGTH_SHORT).show();
				flag = System.currentTimeMillis();

			} else if (System.currentTimeMillis() - flag < 2000) {
				Intent exit = new Intent(Intent.ACTION_MAIN);
				exit.addCategory(Intent.CATEGORY_HOME);
				exit.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
				startActivity(exit);
				System.exit(0);
			}
		}
		return true;
	}

좋은 웹페이지 즐겨찾기