Android 实现简易登录并保存密码。

记住密码以及自动登录的实现主要依赖于 SharedPreferences 类的使用,SharedPreferences 是一个轻量级的存储类,用于存储一些小数据,比如登录账号密码以及状态信息等。

使用工具

  • android studio (ver. 3.5.1)
  • android(sdk 29)
  • java(ver.1.8.0)
  • gradle(ver. 5.4.1)

功能实现

记住密码和自动登录使用 CheckBox 来实现,并设置了全局变量接收当前记住密码以及自动登录的状态。

private EditText etName;private EditText etPass;private CheckBox cbIsRememberPass;private SharedPreferences sharedPreferences;

使用 SharedPreferences 时在页面初始化的时候实例,也就是在 onCreate() 中实现,在实例该类时会在本地创建一个文件,需要给该文件命名。下面是初始化页面时从已存在的文件中读取信息。

sharedPreferences=getSharedPreferences("remenberpass", Context.MODE_PRIVATE);         boolean isRemenber=sharedPreferences.getBoolean("remenberpass",false);         if(isRemenber){             String name=sharedPreferences.getString("name","");             String pass=sharedPreferences.getString("pass","");             etName.setText(name);             etPass.setText(pass);             cbIsRememberPass.setChecked(true);         }

给登录按钮点击事件绑定用于验证登录。

public void login(View view){         String name=etName.getText().toString();         String pass=etPass.getText().toString();             //测试账号密码均为 123         if("123".equals(name)&&"123".equals(pass)){             SharedPreferences.Editor editor=sharedPreferences.edit();             if(cbIsRememberPass.isChecked()){                 editor.putBoolean("remenberpass",true);                 editor.putString("name",name);                 editor.putString("pass",pass);             }else {                 editor.clear();             }             editor.commit();             Intent intent=new Intent(this,login_successful.class);             startActivity(intent);             finish();         }else {             Toast.makeText(this,"账号或密码有误",Toast.LENGTH_LONG).show();         }    }

演示

代码下载地址

SimpleLogin

更多相关文章

  1. Android下USB Accessory的实现分析 (四)--- AOA上层分析
  2. Android(安卓)使用jdk1.8新特性之lambda表达式
  3. Android(安卓)应用语言设置的实现
  4. Android入门(9)AudioRecord和AudioTrack类的使用http://blog.sina.
  5. 浅谈Java中Collections.sort对List排序的两种方法
  6. 箭头函数的基础使用
  7. NPM 和webpack 的基础使用
  8. Python list sort方法的具体使用
  9. 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程

随机推荐

  1. android 软解 硬解 渲染
  2. imagebutton 带文字
  3. android:process=":remote"
  4. android 多媒体扫描过程(Android(安卓)Med
  5. Excessive JNI global references - Andr
  6. Android(安卓)Studio第三十九期 - popWin
  7. Android——ViewPager+Fragment+ListView
  8. Android7.0中文文档(API)-- LinearLayout.L
  9. android 微信 listview 气泡
  10. imagebutton 带文字