即使用户已登录,也会在单击后退按钮后退出Phonegap安卓应用程序

时间:2014-06-06 07:40:32

标签: android cordova

我正在使用 PhoneGap Eclipse 创建一个简单的Android登录应用程序,并面临android后退按钮的问题。

我想控制后退按钮的行为,例如:

  1. 如果用户已登录并且他/她按下后退按钮应该最小化。
  2. 如果未登录的应用程序应在单击后退按钮后关闭。
  3. 我搜索了大量关于&#34的帖子;点击后退按钮后最小化应用程序" 但没有得到解决方案。有解决方案吗

2 个答案:

答案 0 :(得分:3)

您可以在

的帮助下进行手机扣回按钮事件
document.addEventListener("backbutton", onBackButtonFire, false); 

处理应用程序暂停

document.addEventListener("pause", onPause, false);

处理申请表简历

document.addEventListener("resume", onResume, false);

定义后退功能

function onBackButtonFire()
{
    // Check if user is logged in or not.?
    if(localStorage.Checklogin=="true")
    {
        // minimize app here
    }
    else
    {
        // Exit the app
        navigator.app.exitApp();
    }
}
function onPause()
{
    //handel pause;
}
function onResume()
{
    // handel resume of app
}

存储您的用户登录信息localStorage.Checklogin

您可以使用此链接手动暂停应用程序 Manually Make application Pause

答案 1 :(得分:1)

后退按钮的默认行为是在历史记录中导航回来,如果不再有历史记录,则关闭应用程序。

在Cordova / Phonegap中,您可以为后退按钮构建自己的事件处理程序。

请参阅此处的文档:http://cordova.apache.org/docs/en/3.5.0/cordova_events_events.md.html#backbutton

然后在您的事件处理程序中,如果您不在第一页上,则可以使用history api导航回来,或根据用户是否记录执行您自己的逻辑来关闭/减少应用程序

关闭应用程序很简单:navigator.app.exitApp();

但要减少它,我不知道在手机屏幕上是否容易。而老实说,我认为它没有任何意义,就像在Android那里的主页按钮基本上减少了应用程序。

我在我的应用程序中做的是,如果用户已登录,我会显示一个对话框,询问用户是否要断开连接。

相关问题