返回顶部
首页 > 资讯 > 精选 >Android应用中使用SharedPreferences实现一个自动登录功能
  • 593
分享到

Android应用中使用SharedPreferences实现一个自动登录功能

androidsharedpreferencesroi 2023-05-31 12:05:58 593人浏览 薄情痞子
摘要

本篇文章给大家分享的是有关Android应用中使用SharedPreferences实现一个自动登录功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。SharedPrefere

本篇文章给大家分享的是有关Android应用中使用SharedPreferences实现一个自动登录功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

SharedPreferences介绍:

SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置参数,它是采用xml文件存放数据的,文件存放在"/data/data<package name>/shared_prefs"目录下。

SharedPreferences的用法:

由于SharedPreferences是一个接口,而且在这个接口里没有提供写入数据和读取数据的能力。但它是通过其Editor接口中的一些方法来操作SharedPreference的,用法见下面代码:

Context.getSharedPreferences(String name,int mode)来得到一个SharedPreferences实例

name:是指文件名称,不需要加后缀.xml,系统会自动为我们添加上。

mode:是指定读写方式,其值有三种,分别为:

Context.MODE_PRIVATE:指定该SharedPreferences数据只能被本应用程序读、写

Context.MODE_WORLD_READABLE:指定该SharedPreferences数据能被其他应用程序读,但不能写

Context.MODE_WORLD_WRITEABLE:指定该SharedPreferences数据能被其他应用程序读写。

工程目录:

Android应用中使用SharedPreferences实现一个自动登录功能

Java代码

LoginActivity.java

package com.liu.activity;  import android.app.Activity; import android.app.backup.SharedPreferencesBackupHelper; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; import android.os.Bundle; import android.text.Spannable; import android.view.View; import android.view.View.OnClickListener; import android.view.Window; import android.widget.Button; import android.widget.CheckBox; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.EditText; import android.widget.ImageButton; import android.widget.Toast;  public class LoginActivity extends Activity {   private EditText userName, passWord;  private CheckBox rem_pw, auto_login;  private Button btn_login;  private ImageButton btnQuit;  private String userNameValue,passwordValue;  private SharedPreferences sp;   public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);    //去除标题  this.requestWindowFeature(Window.FEATURE_NO_TITLE);  setContentView(R.layout.login);    //获得实例对象  sp = this.getSharedPreferences("userInfo", Context.MODE_WORLD_READABLE);  userName = (EditText) findViewById(R.id.et_zh);  password = (EditText) findViewById(R.id.et_mima);  rem_pw = (CheckBox) findViewById(R.id.cb_mima);  auto_login = (CheckBox) findViewById(R.id.cb_auto);  btn_login = (Button) findViewById(R.id.btn_login);  btnQuit = (ImageButton)findViewById(R.id.img_btn);      //判断记住密码多选框的状态  if(sp.getBoolean("ISCHECK", false))  {   //设置默认是记录密码状态   rem_pw.setChecked(true);   userName.setText(sp.getString("USER_NAME", ""));   password.setText(sp.getString("PASSWORD", ""));   //判断自动登陆多选框状态   if(sp.getBoolean("AUTO_ISCHECK", false))   {    //设置默认是自动登录状态    auto_login.setChecked(true);   //跳转界面   Intent intent = new Intent(LoginActivity.this,LoGoActivity.class);   LoginActivity.this.startActivity(intent);      }  }    // 登录监听事件 现在默认为用户名为:liu 密码:123  btn_login.setOnClickListener(new OnClickListener() {    public void onClick(View v) {   userNameValue = userName.getText().toString();   passwordValue = password.getText().toString();      if(userNameValue.equals("liu")&&passwordValue.equals("123"))   {    Toast.makeText(LoginActivity.this,"登录成功", Toast.LENGTH_SHORT).show();    //登录成功和记住密码框为选中状态才保存用户信息    if(rem_pw.isChecked())    {    //记住用户名、密码、    Editor editor = sp.edit();    editor.putString("USER_NAME", userNameValue);    editor.putString("PASSWORD",passwordValue);    editor.commit();    }    //跳转界面    Intent intent = new Intent(LoginActivity.this,LogoActivity.class);    LoginActivity.this.startActivity(intent);    //finish();      }else{       Toast.makeText(LoginActivity.this,"用户名或密码错误,请重新登录", Toast.LENGTH_LONG).show();   }      }  });   //监听记住密码多选框按钮事件  rem_pw.setOnCheckedChangeListener(new OnCheckedChangeListener() {   public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {   if (rem_pw.isChecked()) {       System.out.println("记住密码已选中");    sp.edit().putBoolean("ISCHECK", true).commit();      }else {       System.out.println("记住密码没有选中");    sp.edit().putBoolean("ISCHECK", false).commit();      }    }  });    //监听自动登录多选框事件  auto_login.setOnCheckedChangeListener(new OnCheckedChangeListener() {   public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) {   if (auto_login.isChecked()) {    System.out.println("自动登录已选中");    sp.edit().putBoolean("AUTO_ISCHECK", true).commit();    } else {    System.out.println("自动登录没有选中");    sp.edit().putBoolean("AUTO_ISCHECK", false).commit();   }   }  });    btnQuit.setOnClickListener(new OnClickListener() {     @Override   public void onClick(View v) {   finish();   }  });   } }

--结束END--

本文标题: Android应用中使用SharedPreferences实现一个自动登录功能

本文链接: https://lsjlt.com/news/225386.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Android应用中使用SharedPreferences实现一个自动登录功能
    本篇文章给大家分享的是有关Android应用中使用SharedPreferences实现一个自动登录功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。SharedPrefere...
    99+
    2023-05-31
    android sharedpreferences roi
  • Android:利用SharedPreferences实现自动登录
    本文介绍了Android:利用SharedPreferences实现自动登录,具体如下: 主要代码: public class LoginActivity extends...
    99+
    2022-06-06
    自动 Android
  • Android用SharedPreferences实现登录注册注销功能
    Android用SharedPreferences实现登录注册注销功能 前言 本文用SharedPreferences本地缓存账号信息来实现登录注册功能,以及退出注销功能。 一、本文...
    99+
    2024-04-02
  • Android中怎么利用SharedPreferences实现自动登录记住用户名和密码功能
    本篇文章为大家展示了Android中怎么利用SharedPreferences实现自动登录记住用户名和密码功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。SharedPreferences简介Sh...
    99+
    2023-05-31
    android sharedpreferences
  • Android应用中怎么利用SharedPreferences实现一个数据存储功能
    这期内容当中小编将会给大家带来有关Android应用中怎么利用SharedPreferences实现一个数据存储功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。除了SQLite数据库外,SharedPr...
    99+
    2023-05-31
    android sharedpreferences roi
  • Android用SharedPreferences怎么实现登录注册注销功能
    这篇“Android用SharedPreferences怎么实现登录注册注销功能”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇...
    99+
    2023-06-30
  • 使用servlet实现一个用户登录功能
    这篇文章给大家介绍使用servlet实现一个用户登录功能,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。用servlet来简单实现一个用户登录的小程序。 首先,servlet也是一个JAVA类,新建一个JAVA类,它直接...
    99+
    2023-05-31
    servlet 用户登录
  • 在Android应用中实现一个录音播放功能
    这期内容当中小编将会给大家带来有关在Android应用中实现一个录音播放功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。播放音频文件public class PlayManager { private ...
    99+
    2023-05-31
    android roi
  • 使用ajax怎么实现一个登录功能
    本篇文章给大家分享的是有关使用ajax怎么实现一个登录功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。ajax的优点:最大的一点是页面无刷新,用户的体验非常好。使用异步方式与...
    99+
    2023-06-08
  • 使用struts1如何实现一个登录功能
    这期内容当中小编将会给大家带来有关使用struts1如何实现一个登录功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。环境:MyEclipse 14    &nbs...
    99+
    2023-05-31
    struts 登录
  • Android SharedPreferences实现记住密码和自动登录界面
    SharedPreferences介绍: SharedPreferences是Android平台上一个轻量级的存储类,主要是保存一些常用的配置参数,它是采用xml文件存放数据的...
    99+
    2022-06-06
    自动 界面 Android
  • Android应用中怎么实现一个通话录音功能
    这期内容当中小编将会给大家带来有关Android应用中怎么实现一个通话录音功能,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。服务代码:package com.eboy.phoneListener;impo...
    99+
    2023-05-31
    android roi
  • JavaWeb实现自动登录功能
    本文实例为大家分享了JavaWeb实现自动登录功能的具体代码,供大家参考,具体内容如下 自动登录是通过存储cookie值来实现的。 工程目录如下: login.jsp: <...
    99+
    2024-04-02
  • Android Studio|使用SqLite实现一个简单的登录注册功能
    本学期学习了Android Studio这门课程,本次使用Android Studio自带的sqlite数据库实现一个简单的登录注册功能。 目录 一、了解什么是Android Studio? 二、了解什么是sqlite? 三、创建项目文件 ...
    99+
    2023-10-06
    sqlite android studio 数据库
  • Android应用中怎么实现一个手机震动功能
    本篇文章给大家分享的是有关Android应用中怎么实现一个手机震动功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。实现方法如下:import android.app.Acti...
    99+
    2023-05-31
    android roi
  • Android开发中使用PHP服务器怎么实现一个登录功能
    Android开发中使用PHP服务器怎么实现一个登录功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Android客户端和PHP、MySQL搭建的服务器之间的简单交互,实...
    99+
    2023-05-31
    android php roi
  • android中SharedPreferences实现存储用户名功能
    1. 简介 SharedPreferences是一种轻型的数据存储方式,通过key-value键值对的方式将数据存储在xml文件中,常用于存储简单的配置信息。 2. 使用方式 ...
    99+
    2022-06-06
    存储 用户名 Android
  • 在Android项目中利用TextView实现一个自动滚动功能
    在Android项目中利用TextView实现一个自动滚动功能?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。在做android 应用的开发的时候,横向滚动或者要...
    99+
    2023-05-31
    android textview roi
  • Android开发中如何实现一个应用程序开机自启动功能
    今天就跟大家聊聊有关Android开发中如何实现一个应用程序开机自启动功能,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Android在开机时自动启动一个应用程序在启动时自动启动一个...
    99+
    2023-05-31
    android roi
  • Android使用http实现注册登录功能
    在项目中实现注册登录有很多种方式,一般对于初学者来说,不使用框架,采用http的post和get请求后台服务器,是一种更好理解底层源码的方式。使用框架实现注册登录虽然比自己封装pos...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作