Android之ContentProvider

本文介绍了Android中的ContentProvider,作为数据共享的统一入口,用于在应用间共享数据。ContentProvider包含的主要方法有query、insert、update、delete和getType,通过Uri操作数据。开发者需要继承ContentProvider,重写相关方法并在AndroidManifest.xml中配置。外部应用通过ContentResolver与ContentProvider交互。Uri是ContentProvider操作数据的关键,包含scheme、authority和path。UriMatcher和ContentUris是辅助操作Uri的工具类。
摘要由CSDN通过智能技术生成

在Android开发中,有时用户确实需要在应用之间进行数据的交换。我们知道通过指定文件的操作模式为 Context.MODE_WORLD_READABLE或 Context.MODE_WORLD_WRITEABLE同样也可以对外共享数据。但是如果采用文件操作模式对外共享数据,数据的访问方式会因数据存储的方式而不同,导致数据的访问方式无法统一,比如采用xml文件对外共享数据,需要进行xml解析才能读取数据;采用 sharedpreferences共享数据,需要使用sharedpreferences API读取数据。为此,Google提供了 ContentProvider (内容提供者),它可以实现统一的数据访问方式。

ContentProvider 常用类简介

ContentProvider(内容提供者)是Android 中的四大组件之一,主要用于对外共享数据,也就是通过ContenProvider 把应用中的数据共享给其他应用访问,其他应用可以通过 ContenProvider对指定应用中的数据进行操作。ContenProvider分为系统的和自定义的,系统的例如联系人、图片等数据。内容提供者提供的数据可以存储于文件系统、SOLite数据库或其他方式。

当应用需要通过ContentProvider 对外共享数据时,第一步需要继承 ContentProvider 并重写下面的方法。

需要被重写的 ContentProvider 类的主要方法如下:

public bolean onCreate() 在创建 ContentProvider 时调用此方法

Public Cursor query(Uri uri, String[] args1, Sring str1, String[] args2, String str2)

用于查询指定 Uri 的 ContentProvider,返回值为一个 Cursor 类型的数据集

public Uri insert(Uri uri, ContentValues cv) 用于添加数据到指定 Uri 的 ContentProvider 中,并返回一个Uri

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值