疯狂Android讲义 - 学习笔记(七)

本文深入探讨了Android系统中的数据存储与Io技术,包括使用SharedPreferences、File存储、SQLite数据库,以及手势检测和自动朗读功能。同时介绍了ContentProvider在实现数据共享中的作用,并详细阐述了其工作原理及应用。

第8章 Android数据存储与IO 

Java IO的数据存储可以移植到Android应用开发上来,Android系统还提供了一些专门的IO API。

Android系统内置了SQLite数据库,SQLite是轻量级的,没有后台进程,整个数据库对应一个文件,这样可以非常方便的在不同设备之间移植。Android为访问SQLite提供了大量便捷的API。

 

8.1 使用SharedPreferences

适用于保存简单格式的数据。 

8.1.1 SharedPreferences 与 Editor

SharedPrefernces保存的数据主要是类似于配置信息格式的数据,因此它保存的数据主要是key-value对。

SharedPreferences接口主要负责读取程序的Preferences数据,没有提供写入数据的能力。

SharedPreferences调用edit()方法即可获取它所对应的Editor对象,由Editor对象提供写入功能,编辑完成后,需要调用commit()。 

SharedPreferences是一个接口,需要调用Context提供的getSharedPreferences()方法来获取其实例。 

8.1.2 SharedPreferences的存储位置和格式

源码\08\8.1\SharedPreferencesTest) 

8.1.3 读、写其他应用的SharedPreferences

前提是其他应用程序指定了相应的访问权限。 

关键是获取其他应用程序的Context,Context代表了Android应用的全局信息的接口。

Android系统将应用程序的包名作为它的唯一标识。 

 

8.2 File存储

Java提供的I/O流 

8.2.1 openFileOutput 和 openFileInput  (Context提供的方法) 

8.2.2 读写SD卡上的文件 

源码\08\8.2\SDFileExplorer) 

 

8.3 SQLite数据库

SQLite支持绝大部分SQL92语法,运行开发者使用SQL语句操作数据,但SQLite数据库只是一个文件。 

8.3.1 SQLite简介 

8.3.2 创建数据库和表

8.3.3 使用SQL语句操作SQLite 

8.3.4 使用sqlite3工具 

8.3.5 使用特定方法操作SQLite数据库,即使用Android的SQLiteDatabase提供的方法。 

8.3.6 事务  SQLiteDatabase中控制事务的方法:beginTransaction(),endTransaction(), inTransaction()用于判断是否处于事务中。 

8.3.7 SQLiteOpenHelper类 是Android提供的管理数据库的工具类。

实际项目中很少使用SQLiteDatabase的方法来打开数据,通常都会继承SQLiteOpenHelper开发子类,并通过该子类的

getReadableDatabase()、getWritableDatabase()方法打开数据库。

 

8.4 手势(Gesture)

8.4.1 手势检测  GestureDetector类,创建这个类时需要传入一个GestureDetector.OnGestureListener监听器实例,这个实例对需要的事件进行处理。

8.4.2 增加手势  

8.4.3 识别用户的手势

 

8.5 自动朗读(TTS) 

Android提供了自动朗读的支持 

 

第9章 使用 ContentProvider实现数据共享

ContentProvider是不同应用程序之间进行数据交换的标准API。暴露自己的数据用ContentProvider,其它应用程序可通过ContentResolve来操作暴露出来的数据。

9.1 数据共享标准:ContentProvider简介

9.1.1 ContentProvider 

9.1.2 Uri简介

9.1.3 使用ContentResolver操作数据

 

9.2 开发ContentProvider

9.2.1 ContentProvider与ContentResolver的关系

Uri是ContentProvider和ContentResolver进行数据交换的标识。

9.2.2 开发ContentProvider

9.2.3 配置ContentProvider 

9.2.4 使用ContentResolver调用方法 

9.2.5 创建ContentProvider的说明

 

9.3 操作系统的ContentProvider 

Android系统本身提供了大量的ContentProvider 

9.3.1 使用ContentProvider管理联系人

9.3.2 使用ContentProvider管理多媒体内容

 

9.4 监听ContentProvider的数据改变

9.4.1 ContentObserver简介 用于监听ContentProvider数据的改变。

 

posted on 2014-06-16 11:52 谕猛子 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/busor/p/3790644.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值