SharedPreferences - Auto Login


=

 package com.example.untils09;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {

 private Button login;
 private EditText edit_name;
 private EditText edit_pass;
 private CheckBox check_login;
 private CheckBox check_pass;
 private Editor edit;
 private SharedPreferences sharedPreferences;

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  // Get resource id
  getId();
  sharedPreferences = getSharedPreferences("user", MODE_PRIVATE);
  edit = sharedPreferences. edit();
  // The status value of taking out the remember password is false
  boolean ischeckpass = sharedPreferences
    .getBoolean("ischeckpass", false);
  // If the remember password is true, take out the account and password
  if (ischeckpass) {
   // Value
   String qname = sharedPreferences.getString("cname", null);
   String qpass = sharedPreferences.getString("cpass", null);
   // Assignment
   edit_name.setText(qname);
   edit_pass.setText(qpass);
   check_pass.setChecked(true);
  }
  // Get the status value of automatic login
  boolean ischecklogin = sharedPreferences.getBoolean("ischecklogin",
    false);
  // Jump if automatic login is selected
  if (ischecklogin) {
   check_login.setChecked(true) ;
   Intent intent = new Intent(MainActivity.this, ShowActivity.class);
   startActivity(intent);
  }
  // While selecting remember password, select automatic login
  check_pass.setOnCheckedChangeListener(new OnCheckedChangeListener() {

   @Override
   public void onCheckedChanged(CompoundButton buttonView,
     boolean isChecked) {
    // TODO Auto-generated method stub
    if (isChecked) {
     check_login.setChecked(true);
    }
   }
  });
  // 点击登录
  login.setOnClickListener(new OnClickListener() {

   @Override
   public void onClick(View v) {
    // Get the input
    String cname = edit_name.getText().toString();
    String cpass = edit_pass.getText().toString();
    if (!cname.isEmpty()) {
     // Remember password is checked,
     if (check_pass.isChecked()) {
      // c save value
      edit.putString("cname", cname);
      edit.putString("cpass", cpass);
      edit.putBoolean(" ischeckpass", true);
      // submit
      edit.commit();
     }
     // auto login save value
     if (check_login.isChecked()) {
      edit.putBoolean("ischecklogin", true);
      edit.commit();
     }

     Intent intent = new Intent(MainActivity.this,
       ShowActivity.class);
     startActivity(intent);
    }else{
     Toast.makeText(MainActivity.this, "不能为空", 0).show();
    }
   }
  });
 }

 // 获取资源id
 private void getId() {
  // TODO Auto-generated method stub
  login = (Button) findViewById(R.id.login);
  edit_name = (EditText) findViewById(R.id.edit_name);
  edit_pass = (EditText) findViewById(R.id.edit_pass);
  check_login = (CheckBox) findViewById(R.id.check_login);
  check_pass = (CheckBox) findViewById(R.id.check_pass);
 }

}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324666051&siteId=291194637