学习笔记——自动登陆

一般的涉及到注册、登陆的App都会为了用户体验,做一个自动登录,就是当用户第一次登录成功后,下一次在进入App不需要再次输入账号密码。总结了下,我所用到过的自动登录的形式。

1、通过SharedPreferences

用SharedPreferences将用户名,密码保存在本地文件中。

// 记住用户名、密码、
SharedPreferences.Editor editor = sp.edit();
String username = et_login_username.getText().toString();
String password = et_login_password.getText().toString();
editor.putString("USER_NAME", username);
editor.putString("PASSWORD", password);
editor.commit();

在下次进入App的时候,将用户名,密码读出来

//读取SharedPreferences里面的用户名,密码
String username = sp.getString("USER_NAME", null);
String password = sp.getString("PASSWORD", null);

拿去登录(一般情况下,拿着用户名,密码去访问服务器,正确则跳转下一个页面)

这里我只是展示了如何写入,和读取,像自动登录那些逻辑,判断是否有数据,如果有就读取到用户名,密码,请求服务器。这些我都没有写。

2、通过SQLite

将用户名,密码保存在本地数据库SQLite中。

username = et_Slogin_username.getText().toString();
password = et_Slogin_password.getText().toString();
SQLiteDatabase db = helper.getWritableDatabase();
db.execSQL("insert into tab_userinfo (username,password,islogin) " +
        "values(?,?,?)", new Object[]{username, password,"true"});

在下次打开App的时候读取出来

SQLiteDatabase db = helper.getWritableDatabase();
Cursor cursor = db.query("tab_userinfo", new String[]{"username", "password", "islogin"},
        "islogin=?", new String[]{"true"}, null, null, null);
while (cursor.moveToLast()) {
    name = cursor.getString(cursor.getColumnIndex("username"));
    pwd = cursor.getString(cursor.getColumnIndex("password"));
    Log.e("111111", "initData: "+name+" 00 "+pwd);
    break;
}

请求服务器,跳转下一个页面实现自动登录。

我这里就大概说下怎样写入,读取,其他一些逻辑,小问题的处理还得召唤师,哦不,工程师自己来思考啊。

关于手势登录,请关注我下一篇博文吧。

下面附上源码地址:http://download.csdn.net/detail/p940226/9900542

不清楚的看源码把,博文中我只是大概走了下写入,读取的流程,其他的我感觉都没什么好值得写的。所以。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值