Android验证QQ密码:SharedPreferences与文件存储实现
33 浏览量
更新于2024-08-30
1
收藏 706KB PDF 举报
本文档主要介绍了在Android应用开发中如何使用文件存储(FileInputStream方式)和SharedPreferences来验证和管理QQ账号的密码。首先回顾了前两个部分的内容:
1. **静态页面-简易QQ登录页面**:这部分介绍了基本的登录界面设计,仅包含一个纯activity_main.xml文件,用户输入账号和密码后可以进行登录操作。
2. **动态页面-简单保存QQ密码**:在此基础上,文章扩展了功能,实现了对已知账号的密码验证。如果账号存在且密码正确,会显示登录成功的提示;密码错误时则显示登录失败。当账号不存在且密码不为空时,会引导用户注册新账号并覆盖原有信息。
**数据存储方式**:
- **SharedPreferences**:这是Android中常用的一种轻量级的数据存储方式,适用于保存少量的配置信息或简单的键值对数据。在本案例中,用于存储用户的QQ账号和密码,方便快速查找和验证。
**SPSaveQQ.java文件代码**:
该Java文件中,代码会读取SharedPreferences中的账号密码,对比用户输入,执行相应的登录逻辑。例如,`SharedPreferences prefs = getSharedPreferences("QQSave", MODE_PRIVATE);`用于获取存储的偏好设置,`String account = prefs.getString("account", "");`读取账号信息。
- 当用户尝试登录时,会检查账号是否存在(`prefs.contains("account")`)和密码是否匹配。如果账号存在但密码错误,会调用`Toast.makeText(this, "账号存在!密码错误!登陆失败!", Toast.LENGTH_SHORT).show();`显示错误消息。
- 对于新用户,如果输入的账号不存在且密码不为空,会调用`SharedPreferences.Editor editor = prefs.edit();`编辑存储,然后添加新的账号和密码,如`editor.putString("account", username); editor.putString("password", password); editor.apply();`。
- 文件存储(FileInputStream方式)虽然没有详细提供,但一般用于处理大容量或结构复杂的数据,不适合简单的键值对存储,因此在这里并不是首选。
**更改工具类**:
为了适应不同存储方式,可能需要创建一个通用的工具类,比如`SaveQQUtil`,负责处理数据的保存和验证,这样可以在SharedPreferences和文件存储之间切换,保持代码的整洁和可维护性。
**运行效果图**:
文章中应该包含了登录流程的模拟图或截图,展示了不同情况下的用户界面反馈,如输入正确账号密码后的登录成功提示,以及输入错误信息时的相应提示。
总结,本文的重点在于讲解如何在Android应用中利用SharedPreferences实现轻量级的账号密码存储,并通过对比用户输入来验证登录,同时涉及到了简单的数据迁移逻辑。对于高级开发者来说,这是一个很好的实例,展示了如何处理基础的本地数据存储和用户权限管理。
3223 浏览量
128 浏览量
1272 浏览量
点击了解资源详情
139 浏览量
870 浏览量
131 浏览量
weixin_38683195
- 粉丝: 3
- 资源: 881
最新资源
- 父母新
- 数据结构,C++实现基于链栈的简单算术表达式求值
- VectorsSortingPractice:C ++本科作业,使我们可以在向量中练习类,并对向量进行排序
- Cape-Cod-Pathways:科德角美丽村庄的自助徒步旅行。 @MaptimeCapeCod 给 Sturgis 图书馆的礼物,用于举办 @maptime 聚会
- excel-course:简单的JS Excel | 根据教育课程
- Real-Time Rendering 3rd/4th 相关论文(新增3篇)
- 保险公司培训需求调查表
- Space-Adventure:Antariksh我Hangama
- 组合混音
- OpenXDM-开源
- Monty Hall:用可变数量的门模拟 n 轮 Monty Hall 问题。-matlab开发
- Royal-Palace:景福宫
- Yorum-Comment
- 树莓派pico初学者学习资料
- 应付帐款模块基础知识培训DOC
- 冲刺2