javascript - 想要使用cordova / android禁用android的HardBack按钮

2020年10月26日 13点热度 0条评论

我想使用Cordova或android在Android上禁用精装按钮,我尝试在android和android中放置代码,但是在android中,由Cordova创建的代码只有唯一的主要活动,并且它在登录的第一页上禁用了back按钮单击“后退”按钮,其他页面上的页面会退出该应用程序或关闭该应用程序,但我希望它在整个应用程序中都禁用

这是android的主要活动代码:-

  @Override
    public void onBackPressed() {

    }

    public boolean onKeyDown(int keyCode, KeyEvent event) {
//        if (keyCode == KeyEvent.KEYCODE_BACK && event.getRepeatCount() == 0) {
//             appView.loadUrl("javascript: onBackKeyDown()");
//            Log.d("logcat", "--------------click click-----------------------------");
//            super.onBackPressed();
//            return true;
//        }
//        return (keyCode == KeyEvent.KEYCODE_BACK ? true : super.onKeyDown(keyCode, event));
        return true;
    }

在Cordova onDeviceReady上:

document.addEventListener(“ backbutton”,onBackKeyDown,false);

function onBackKeyDown() {
    console.log("back keypressed")
    return false;
}

但是此代码在Cordova上运行,但仍然关闭了应用程序

解决方案如下:

只需override onBackPressed并注释super调用,不返回任何内容。

override fun onBackPressed() {
   // super.onBackPressed()
}

并从您的活动中删除
public boolean onKeyDown(int keyCode, KeyEvent event)代码。

而已。