Android - Disable Device Back button

2020-02-09 12:02发布

问题:

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.

回答1:

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();
}