《Android项目式程序设计》05 数据持久化操作写字字帖_第1页
《Android项目式程序设计》05 数据持久化操作写字字帖_第2页
《Android项目式程序设计》05 数据持久化操作写字字帖_第3页
《Android项目式程序设计》05 数据持久化操作写字字帖_第4页
《Android项目式程序设计》05 数据持久化操作写字字帖_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

项目五数据持久化操作学习目标掌握使用SharedPreferences读写移动智能系统的配置文件掌握读写SD卡的图片掌握使用AndroidAPI操作SQLite数据库情景导入随着智能手机的普及,越来越多的人习惯将一些重要资料保存到手机中,一旦手机没电关机,保存的数据也会随之丢失。因此Android提供了SharedPreferences、SD存储、SQLite三种数据存储机制来保存数据。本次任务主要实现登录系统数据持久化操作。任务描述本任务将设计一款利用SharedPreferences、SD卡和SQLite存储的“登录系统”软件。使用线性布局技术来设计登录系统界面Logo界面,Toast提示“欢迎进入登录系统”登录界面,点击“注册”按钮,跳转到注册界面注册界面,输入姓名、性别、用户名、用户密码,点击图片拍照,点击“注册”按钮进行注册登录界面,输入已注册的用户名和用户密码,点击“登录”按钮进行登录登录界面,点击“记住密码”选择框,程序退出后再次进入登录界面时,用户名,用户密码依旧显示登录界面,点击“自动登录”选择框,程序退出后再次进入登录界面时,系统自动实现登录功能【基本框架】基本框架如图5.1、5.2所示,将框架图转换成的效果如图5.3-5.6所示。任务描述图5.1登录系统Login界面框架图图5.2登录系统Register界面框架图

图5.3登录系统Logo界面效果图

任务描述图5.4登录系统Login界面效果图

图5.5登录系统Register界面效果图图5.6登录系统Success界面效果图任务技能技能点1SharedPreferences概述1SharedPreferences存储类的特点SharedPreferences存储类是以XML方式来保存,整体效率比较低,但对于常规的轻量级而言效率要高很多,如果存储量小可以考虑自己定义文件格式。XML处理文件时是使用Dalvik通过自带底层的本地XMLParser解析的,XMLPull方式也是使用的上述方法进行解析文件,这样对于内存资源占用比较好。任务技能2SharedPreferences的特点SharedPreferences是Android平台上一个轻量级的存储类,有以下几个特点:保存应用的一些常用配置。在Activity生命周期中了解当Activity执行onpause()时,最好存储数据,一般将此Activity的状态保存到SharedPreferences中。当Activity重载的时候,系统回调方法onSaveInstanceState(),就能从SharedPreferences中将值取出SharePreferences提供了多种类型数据的保存接口,比如long、int、String、char类型接口可以全局共享访问任务技能3SharedPreferences操作模式移动应用程序存储配置数据有四种模式,在上下文创建SharedPreferences实例对象的时候要指定目标访问应用程序的访问模式。四种模式如表5.1所示。任务技能4SharedPreferences常用方法及实现步骤SharedPreferences常用来存储一些轻量级的数据,常用的方法如表5.2所示。任务技能技能点2读写SD卡1

Environment类的常用方法移动设备的拍照频率高且每个图片都需要一定的存储空间,因此采用读写SD卡中的数据可以满足业务需求的存储要求。读写SD卡上的图片文件都是通过流的方式进行读取的,可以使用在Java面向对象程序设计中的流操作类。在读写SD卡时会常用到设备环境android.os.Environment工具类,Environment类的常用方法说明如表5.3所示。任务技能2读写SD卡的文件的步骤读写SD卡的文件的一般步骤为:(1)判断移动设备中是否存在SD卡,如果存在则对Android系统SD卡里的文件操作添加使用权限。程序通过调用Environment.getExternalStorageState()方法的返回值与Environment.MEDIA_MOUNTED比较,如果SD卡存在并且具有操作权限则返回true。Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED)Android中SD卡外部设置的状态情况如表5.4所示。任务技能(2)通过调用Environment.getExternalStorageDirectory()获取文件绝对路径(即/mnt/sdcard/+文件名),也可以在程序中直接写“/mnt/sdcard/+文件名”这个字符串。(3)获取文件路径后的操作,使用FileInputStream、FileOutputStream、FileReader、FileWriter四个类的方法实现读写SD卡文件数据。(4)如果是在模拟器中测试使用SD卡,需要设置SD卡的大小如图5.7所示。在Android操作系统中操作SD卡需要在AndroidManifest.xml配置文件的Permission选项卡添加两个用户访问权限,如图5.8所示。任务技能任务技能任务技能技能点3SQLite数据库简介及操作1SQLite数据库简介SQLite轻量级关系型数据库发布于2000年。尽管SQLite是一个轻量级的数据库,但它支持关系型数据库(如SQLServer、Oracle)操作数据的大部分功能,如触发器、索引、自动增长字段和LIMIT/OFFSET子句等。SQLite数据库在运行时占用的系统资源极少,目前广泛的应用在嵌入式产品中。Android平台已经嵌入了SQLite数据库,其具有如下特点。任务技能跨平台:SQLite可以编译运行在绝大多数主流操作平台上的软件,也适用于移动终端平台紧凑性:SQLite一个功能齐全但体积很小数据库,可以描述为1个头文件,1个库适应性:作为一个内嵌式的数据库,具备强有力而且可伸缩的关系型数据库前端,简单而紧凑的多路搜索树后端不受拘束的授权:SQLite的全部代码都在公共域中,不需要授权可靠性:SQLite是一个开源的数据库,包含大约30000行标准C代码易用性:SQLite还提供一些独特的功能来提高易用性,包括动态类型、冲突解决和“附加”多个数据库到一个连接的能力任务技能SQLite的存储是采用动态数据存储类型,可以根据存入的值自动进行判断。SQLite支持5种数据类型:NULL-空值、INTEGER-带符号的整型、REAL-浮点型、TEXT-字符串文本和BLOB-二进制对象。在实际编程过程中SQLite数据库可以写入int、varchar等大多数数据类型,在数据库运算或保存时将其转化为可以接受的5种数据类型。移动应用开发阶段只需要引用SQLite提供的API接口工具类即可创建和使用指定的数据库。通常在移动平台上使用SQLiteDatabase工具类创建或打开数据库的方法说明,如表5.5所示。任务技能任务技能2SQLite数据库操作基于数据库创建的基础上,可以对数据库进行建表并且对数据库表的DML(数据操纵)进行操作。根据AndroidAPI中SQLiteDatabase提供的数据操作方法,下面通过表5.6列出常用的数据操作方法。任务技能任务实施第一步:在Eclipse中创建一个Android工程,命名为“登录系统”

,并设计界面。如图5.3-5.6所示。第二步:在src文件夹下建立LogoActivity.java文件和LoginActivity.java文件,并实现从闪屏界面跳转到登录界面。

第三步:实现Login界面初始化。第四步:在src文件夹中下建立

RegisterActivity.java文件并设置Login界面“注册”按钮事件,点击“注册”按钮,跳转到Register界面。

任务实施第五步:在src文件夹下建立数据库register.db并建表msg。第六步:在Register界面实现界面初始化。第七步:在RegisterActivity.java界面输入姓名、账号、密码、性别,利用系统照相机拍照。第八步:在Register界面设置“注册”按钮点击事件,点击“注册”按钮将界面上的所有信息保存到数据库中。任务实施第九步:将注册信息写入数据库表msg中。第十步:返回到Login界面设置“登录”按钮事件。点击“登录”按钮查询数据库信息。第十一步:将查询信息语句写入数据库表msg中。第十二步:在Login界面判断数据库信息与输入信息是否相同,根据判断结果进行登录或提示错误,并添加记住密码以及自动登录功能。第十三步:运行程序,结果如图5.3-5.6

所示。

任务拓展【拓展目的】

熟悉并掌握数据持久化操作技能。【拓展内容】在“登录系统”基础上增加“忘记密码”功能。结果如图5.9–5.11所示。图5.9Login界面

结果图

图5.10Forget界面结果图

图5.11Update界面结果图【拓展步骤】1设计思路点击“忘记密码”后,用户可根据用户真实姓名与账号修改密码。修改信息判断以及提示信息。输入新密码进行密码修改。修改数据库数据代码。任务拓展任务总结本项目内容

主要介绍了在移动设备中应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论