应用关闭

时间:2017-04-27 08:12:32

标签: jquery ajax cordova jquery-mobile

我正在使用jquery mobile工作cordova,我需要在用户暂停或关闭应用程序时,它会向服务器发送ajax请求。我添加了

document.addEventListener("pause",  function(){


        if(!isPayed){
            request = $.ajax({
                url: URL + "removeSit.php",
                type: 'POST',
                data: datastring,
                crossDomain: false,
                cache: false,
                success: function(result){

                    $.mobile.navigate("#homePage");

                },
                error: function(error){

                }
            }); 

        }
    }, false);

如果我暂停应用程序,它可以工作,但如果我立即关闭应用程序(通过菜单按钮),它不会发送请求。我也尝试了“menubutton”事件,但结果相同。

1 个答案:

答案 0 :(得分:0)

1.App关闭ajax电话

您必须阻止关闭应用

function onDeviceReady(){
    document.addEventListener("backbutton", onBackKeyDown, false);
}
function onBackKeyDown(){
    return false;
    //////////// your ajax call here
    $.ajax({
        url: "demo_test.txt", 
        success: function(result){            
        navigator.app.exitApp();  ///// on success close app
    }});
}

2.App暂停ajax调用

document.addEventListener("pause", onPause, false);    
function onPause() {
    /// your ajax call here
}

如果用户从任务管理器app中杀死最小化的应用程序,则无法发送ajax请求。 为此,您必须设置间隔以检查应用是否已关闭