onKeyDown() or onBackPressed()

user1249134 picture user1249134 · Mar 5, 2012 · Viewed 41.9k times · Source

I want to implement the back button functionality in my application. In application whenever I'm clicking on back button in middle my control is going to login page directly, so can someone tell me where to override onKeyDown() or onBackPressed() methods?

public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {
        Log.e("back key pressed","Back key pressed");
        return true;
    }
    return super.onKeyDown(keyCode, event);
}

because I'm writing this inside onCreate and outside onCreate also, but it's not working ......

Answer

zostay picture zostay · Mar 5, 2012

Depends on whether or not you want to support pre-Android 2.0 phones. The onBackPressed() method was added to Android 2.0 (API 5).

You may want to read this post on the Android Developer blog for details:

http://android-developers.blogspot.com/2009/12/back-and-other-hard-keys-three-stories.html