如何检查当前用户是否已登录android。 我有一个外部数据库,我已成功将其连接到数据库。 我需要检查用户是否已登录
如果用户未登录将显示{register activity},否则将显示{my info activity}
答案 0 :(得分:18)
可以通过sharedpreferences
完成,如果你想从数据库做,那么取一个布尔值并根据用户ID保存登录信息,然后当你第一次登录时,再将它true
和之后,任何时候只需获取该布尔值,如果为真,那么{my info activity}其他明智的{注册活动}简单就是这个老兄:)
这样在首次登录时使用sharedpreferences
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
prefs.edit().putBoolean("Islogin", Islogin).commit(); // islogin is a boolean value of your login status
以及当你想获得状态的任何时候
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
boolean Islogin = prefs.getBoolean("Islogin", false); // get value of last login status
现在检查
if(Islogin)
{ // condition true means user is already login
Intent i = new Intent(this, "your login activity");
startActivityForResult(i, 1);
}
else
{
// condition false take it user on login form
}
答案 1 :(得分:1)
根据this:
要检查用户是否已登录,请调用isConnected()。
const partial = fn => (...pargs) => (...args) => fn.apply(null, [...pargs, ...args]);
const partialRight = fn => (...pargs) => (...args) => fn.apply(null, [...args, ...pargs.reverse()]);
const myFunc = (one, two, three, four) => {
console.log(one);
console.log(two);
console.log(three);
console.log(four);
};
const myFuncPartial = partial(myFunc)('1');
const myFuncPartialRight = partialRight(myFuncPartial)('4', '3');
myFuncPartialRight('2');
答案 2 :(得分:0)
将状态保存在PreferenceManager中。
您可以看到一个小例子here
答案 3 :(得分:0)
如果您只想测试用户是否已登录设备,只需按照其他人指示的SharedPreference
执行此操作即可。
但是,如果您想确保用户登录到您的外部网站,则会更复杂,需要更多工作。
1-您的网站应该通过设置一些Cookie来记住我功能
2-用户从应用程序成功登录到您的网站;你需要保留记住我 cookie(例如将其序列化为某个文件)
3-当用户打开应用程序时,您必须加载该cookie(如果存在)并向服务器发出请求以确保用户是否仍然登录(例如,处理HTTP响应代码)
答案 4 :(得分:0)
这可以通过两种方式完成。一种是将它们存储在全局变量中,二是将数据存储在共享首选项中。见this示例。