如何在 phoneGap 中保持会话

How To maintain session in phoneGap

我找不到任何方法来处理这个问题。 我在 PhoneGap 中开发了一个单页应用程序,它只是登录页面。
登录后,我将其重定向到网站。 现在问题是我必须在 App.
中保持登录状态 例如,如果用户在没有注销的情况下退出应用程序,那么他不应该在下次启动时看到我的登录屏幕。它应该直接去网站。

在 android 中,我们可以使用我知道的共享首选项来处理它,但我对 PhoneGap 完全陌生。此外,当用户单击重定向网站中的注销时,我的应用程序的登录屏幕应该出现而不是网站的登录屏幕。

我用谷歌搜索了它,但找不到任何有用的东西

您可以将登录状态和会话 ID 存储在 sqlLite 或 LocalStorage 中。 在启动应用程序时,您可以检查已使用的存储中的值。

供您参考,您可以查看此link

http://docs.phonegap.com/en/edge/cordova_storage_localstorage_localstorage.md.html

使用 localStorage 代替 sessionStorage。为了更好,使用 sqlite。 SessionStorage 只是暂时比较localStorage。但是sqlite比较持久。

localStorage 语法

localStorage.userId

sessionStorage 语法

sessionStorage.userId

sqlite

https://github.com/brodysoft/Cordova-SQLitePlugin

您可以使用 localStorage,正如 Nurdin 所说,它不是那么持久。

在此处阅读更多相关信息。 http://www.w3schools.com/html/html5_webstorage.asp

所以你必须在登录页面之前设置一个条件来检查用户是否登录,即

if(window.localStorage.getItem("loggedIn") == 1) {
// Logged In
// Redirect to first page after logged in.
}
else
{
// Redirect to login page.
}

登录页面,登录成功后

window.localStorage.setItem("loggedIn", 1);
window.localStorage.setItem("username", document.getElementsByName("usernametextbox").value);

等等

在注销页面中清除此 localStorage 值。

window.localStorage.removeItem("loggedIn");
window.localStorage.removeItem("username");