继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

SharedPreferences记录登录信息

荷兰豆弟弟
关注TA
已关注
手记 6
粉丝 2
获赞 6

简单的注册页面布局:

http://img1.mukewang.com/608a1a3a000166e903320297.jpg

简单的登录页面布局:

http://img1.mukewang.com/608a1a530001372f03300211.jpg


直接从注册页面RegisterActivity的“立即注册”按钮的点击事件开始:

mBtn_register.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        //获取账号输入框的内容
        String ed_Username = mEd_register_name.getText().toString();
        //获取密码输入框内容
        String ed_UserPass = mEd_register_pass.getText().toString();
        //获取重复密码输入框的内容
        String ed_UserPass_2=mEd_register_pass_2.getText().toString();
        //注册账号合法性判断
        if (ed_Username.equals("")) {
            Snackbar.make(v, "账号不能为空", BaseTransientBottomBar.LENGTH_SHORT).show();
        }else if (ed_UserPass.equals("")||ed_UserPass_2.equals("")){
            Snackbar.make(v, "检测到有密码输入框没有输入内容", BaseTransientBottomBar.LENGTH_SHORT).show();
        }else if (ed_Username.length()!=11){
            Snackbar.make(v, "用户名请设置手机号码!该用户名不合法!", BaseTransientBottomBar.LENGTH_SHORT).show();
        }else if(!(ed_UserPass.equals(ed_UserPass_2))){
            Snackbar.make(v, "2次输入的密码务必相等!请检查后重新输入相等的密码并且牢记!", BaseTransientBottomBar.LENGTH_SHORT).show();
        }else{
            //参数1:文件名 参数2:模式(私有模式—MODE_PRIVATE)
            //如果名为MyShare已经存在,putString会替换内容,不存在的话会直接新建
            SharedPreferences sharedPreferences=getSharedPreferences("MyShare",MODE_PRIVATE);
            SharedPreferences.Editor editor=sharedPreferences.edit();
            //参数1:keyName,参数2:内容
            editor.putString("userName",ed_Username);
            editor.putString("userPass",ed_UserPass);
            //完成创建
            editor.commit();
            //跳转并结束注册页面
           startActivity(new Intent(Register_Activity.this,Login_Activity.class));
           finish();
        }
    }
});

多用来存储登录信息,比如记住用户名或记住密码的操作。SharedPreferences文件的路径是

data/data/包名/shared_prefs

——此处我的文件命名不规范

http://img.mukewang.com/608a1b9c00015ebe05770130.jpg

http://img1.mukewang.com/608a1c0c0001d09703650297.jpg

打开这个文件可以看到自己注册的账号和密码信息,在map标签里。

<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
    <string name="userPass">123456789</string>
    <string name="userName">15550813001</string>
</map>

在登录Activity中获取……并且将登录界面的账号输入框和密码输入框设置为文件中所保存的数据,keyName对应注册界面中填写的。

SharedPreferences sharedPreferences = getSharedPreferences("MyShare", MODE_PRIVATE);
String myUserName = sharedPreferences.getString("userName", "");
String myUserPass = sharedPreferences.getString("userPass", "");
mEd_name.setText(myUserName);
mEd_Pass.setText(myUserPass);

http://img3.mukewang.com/608a1ccc00013d5f03630212.jpg

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP