S1_Android_Day7_Course7

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
每日一词

share preference Handler retrieve persistent
1
上节回顾
Activity Intent
2
本节内容
1、数据存储 a.SharedPreferences b.SQLite
2013-12-14
SharedPreferences
除了SQLite数据库外,SharedPreferences 也是一种轻型的数据存储方式,它的本质是基于 XML文件存储key-value键值对数据,通常用来 存储一些简单的配置信息。其存储位置在 /data/data/<包名>/shared_prefs目录下。 SharedPreferences对象本身只能获取数据而不 支持存储和修改,存储修改是通过Editor对象实 现
11
总结
1、数据存储 a.SharedPreferences b.SQLite
2013-12-14
作业
完善身高体重计算器,每次登陆时自动显示上一次 的身高值
2013-12-14
4
SharedPreferences
实现SharedPreferences存储的步骤如下:
一、根据Context获取SharedPreferences对象 二、利用edit()方法获取Editor对象。 三、通过Editor对象存储key-value键值对数据。 四、通过commit()方法提交数据。
6
SharedPreferences
一般在程序启动的时候重新获取保存的数据: SharedPreferences setting = getSharedPreferences("ACCOUNT", 0); String lastname = setting.getString("name", "");
8
SQLite
我们在编写数据库应用软件时,需要考虑这样的问题:因 为我们开发的软件可能会安装在很多用户的手机上,如果应用 使用到了SQLite数据库,我们必须在用户初次使用软件时创建 出应用使用到的数据库表结构及添加一些初始化记录,另外在 软件升级的时候,也需要对数据表结构进行更新。那么,我们 如何才能实现在用户初次使用或升级软件时自动在用户的手机 上创建出应用需要的数据库表呢?总不能让我们在每个需要安 装此软件的手机上通过手工方式创建数据库表吧?因为这种需 求是每个数据库应用都要面临的,所以在Android系统,为我 们提供了一个名为SQLiteOpenHelper的抽象类,必须继承它 才能使用,它是通过对数据库版本进行管理来实现前面提出的 需求。
5Βιβλιοθήκη Baidu
SharedPreferences
一般在程序退出的时候存储数据: SharedPreferences setting = getSharedPreferences("ACCOUNT", 0); // 是文件的名称 Editor editor = setting.edit(); //name是键的名称, someString是其对应的值 editor.putString("name",someString); editor.commit();
SQLite getWritableDatabase()和 getReadableDatabase()方法都可以获取一个用于 操作数据库的SQLiteDatabase实例。但 getWritableDatabase() 方法以读写方式打开数据 库,一旦数据库的磁盘空间满了,数据库就只能读 而不能写,倘若使用getWritableDatabase()打开 数据库就会出错。getReadableDatabase()方法先 以读写方式打开数据库,如果数据库的磁盘空间满 了,就会打开失败,当打开失败后会继续尝试以只 读方式打开数据库。
7
SQLite SQLite是轻量级的、嵌入式的、关系型数据库, 目前已经在iPhone、Android等手机系统中使 用,SQLite可移植性好,很容易使用,很小,高效而 且可靠。SQLite嵌入到使用它的应用程序中,它们 共用相同的进程空间,而不是单独的一个进程。从 外部看,它并不像一个RDBMS,但在进程内部,它 却是完整的,自包含的数据库引擎。
9
SQLite
为了实现对数据库版本进行管理,SQLiteOpenHelper类提供了两 个重要的方法,分别是onCreate(SQLiteDatabase db)和 onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion), 前者用于初次使用软件时生成数据库表,后者用于升级软件时更新数据 库表结构。当调用SQLiteOpenHelper的getWritableDatabase()或者 getReadableDatabase()方法获取用于操作数据库的SQLiteDatabase 实例的时候,如果数据库不存在,Android系统会自动生成一个数据库, 接着调用onCreate()方法,onCreate()方法在初次生成数据库时才会 被调用,在onCreate()方法里可以生成数据库表结构及添加一些应用使 用到的初始化数据。onUpgrade()方法在数据库的版本发生变化时会被 调用,一般在软件升级时才需改变版本号,而数据库的版本是由程序员 控制的,假设数据库现在的版本是1,由于业务的变更,修改了数据库表 结构,这时候就需要升级软件,升级软件时希望更新用户手机里的数据 库表结构,为了实现这一目的,可以把原来的数据库版本设置为2(有同 学问设置为3行不行?当然可以,如果你愿意,设置为100也行),并且 在onUpgrade()方法里面实现表结构的更新。当软件的版本升级次数比 较多,这时在onUpgrade()方法里面可以根据原版号和目标版本号进行 10 判断,然后作出相应的表结构及数据更新。
相关文档
最新文档