Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android - Disable Device Back button

I am working on android application using PhoneGap. I need to handle Device back button functionality by using the below code:

 import com.phonegap.DroidGap;
 public Class MyClass extends DroidGap {
 appView.setOnKeyListener(new OnKeyListener() { 
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_UP) {
                finish();
                return true;
            }
            return onKeyDown(keyCode, event); 
        } 
    });
  }

By using the above code, Application getting exited because i have used finish(); But i want nothing should be happened on click of Device back button. How can i acheive that? Please help me.

like image 559
Avadhani Y Avatar asked Jul 26 '13 07:07

Avadhani Y


People also ask

Can you disable the Back button in Android?

In Android we can change the default behaviour of the any activity like keypress, back button press, swap left swap right, to do Disable Back Press we need to override default functionality of onBackPressed() or onKeyDown() method in Activity class.

How do I disable Home button on Android?

Navigate to Android > Restrictions > Basic and click on Configure. Under Allow Device Functionality, you'll have the options to disable Home/Power button. Home Button-Uncheck this option to restrict users from using the Home Button. Power Off-Uncheck this option to restrict users from turning their devices off.


1 Answers

Why do you need to do this at the Java level? You can achieve this with Javascript using Phonegap's Event API

document.addEventListener("backbutton", onBackKeyDown, false);
function onBackKeyDown(e) {
  e.preventDefault();
}
like image 125
DaveAlden Avatar answered Nov 09 '22 05:11

DaveAlden