Android高级开发第五讲API之Content Providers


博客出自:http://blog.csdn.net/liuxian13183,转载注明出处! All Rights Reserved ! 


Android的四大数据存储方式:文件,Sqlite,SharedPreference,ContentProvider。

文件可以是txt,也可以是xml,或者其他;可以保存在asset里,这样只有本项目可以访问,保存在内存卡或者SD卡中,其他项目也可以访问的到;

Sqlite主要用来规范化字段存储,本质是个文件管理系统;可以设置权限world_writeable,让所有项目都可以访问,也可以不设,默认只有本项目可以使用。

SharedPreference是个轻量级的存储器,只有本项目可以访问其中的数据。

ContentProvider使用系统常量主要用来对数据进行操作,如短信,图片,音频,联系人等等,也可以自定义URI,所有项目可用

以下是ContentProvider的API翻译内容。

content provider 提供一套结构化数据访问。提供封装数据和数据安全机制。content provider是一个进程与另一个进程进行数据连接的确标准接口。
当你要访问content provider里的数据,你需要使用应用里的上下文对象作为访问者来与provider进行连接,它们之间是通过一个ContentProvider的实行例化对象进行通信的。这个provider对象接收client数据请求,执行操作,返回结果。
如果你不想与其他应用共享数据,你就不用开发自己的provider。但是,你需要在自己的应用里提供一套搜索建议机制。如果你想从你的应用复制或粘贴复杂的数据到其他应用,那你需要一个自己的provider。
android自定义了一些content provider来管理如音频、视频、图像、个人信息。可以通过android.provider.package来查找相关文档。有了这些约束,android应用都可以任意访问provider。
下列主题描述更详细的content provider信息。
Content Provider Basics
How to access data in a content provider when the data is organized in tables.
Creating a Content Provider
How to create your own content provider.
Calendar Provider
How to access the Calendar Provider that is part of the Android platform.
Contacts Provider
How to access the Contacts Provider that is part of the Android platform.


原文地址:https://www.cnblogs.com/fengju/p/6174477.html