Content Provider 详解


ContentProvider (内容提供器)简介

ContentProvider 主要用于在不同的应用程序之间实现数据共享的功能。

它提供了一套完整的机制,允许一个程序访问另外一个程序的数据,同时还能保证被访问数据的安全性。目前使用 Content Provider 是 Android 实现跨进称共享数据的标准方式。


Content Provider 不同于 文件存储 ShardPreferences存储 全局可读写操作模式,它可以选择只对哪一部分数据进行共享,从而保证我们程序中的隐私数据不会有泄漏的风险。

Content Provider 的用法一般有两种:1> 使用现有的内容提供器来读取和操作相应程序中的数据;  2> 创建自己的内容提供器给我们程序的数据提供外部访问接口

如果一个应用程序通过内容提供器对其数据提供了外部访问接口,那么任何其他的应用程序就都可以对这部分数据进行访问。 例如:系统中自带的电话簿、短信、媒体库等

程序都提供了类似的访问接口,这就使得第三方应用程序可以充分的利用这部分数据来实现更好的功能。


访问其他应用程序中的数据
  • ContentResolver 的基本用法

对于每一个应用程序来说,如果想要访问内容提供器中共享的数据,就一定要借助 ContentResolver 类。

可以通过 Context 中的 getContentResolver() 方法获取到该类的实例。

ContentResolver 中提供了一系列的方法用于对数据进行 CRUD 操作,insert() 添加数据、update() 更新数据、delete() 删除数据、query() 查询数据。


创建自己的内容提供器

使用内容提供器,可以通过新建一个类去继承 Content Provider 的方式来创建一个自己的内容提供器。

Content Provider 类提供了六个抽象方法,我们在使用子类继承它的时候,需要将这几个方法全部重写。








评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值