cordova/phonegap 阻止并允许后退按钮

cordova/phonegap block and allow back button

我试图在某些情况下阻止后退按钮。

然而,一旦我添加事件监听器,它总是会阻止后退按钮。

 document.addEventListener("deviceready", onDeviceReady, false);
 function onDeviceReady() {
      document.addEventListener("backbutton", onBackKey, false);
 }

function onBackKey() {
    if($scope.quicksetup)
    {   
        alert("1");
        return false;
    }   
    else
    {   
        alert("2");
        return true;
    }   
}   

它出现在 else 结构中,但当它 returns 为真时,它不再执行后退操作。

logcat 中没有任何错误。 我不知道是什么原因造成的...

一旦你设置了监听器,你就会覆盖 backbutton 行为,无论你是 return true 还是 false 它都不会再以正常方式执行。
您需要使用 navigator.app.backHistory()navigator.app.exitApp(); 来处理返回和退出应用程序。

onbackbutton回调不期望任何东西被return编辑,它不是一个boolean回调函数。

function onBackKey() {
    if($scope.quicksetup)
    {   
        alert("1");
        return;
    }   
    else
    {   
        alert("2");
        navigator.app.exitApp(); //I guess you want to exit the app here
    }   
}