ContentProvider
(1)、ContentProvider
<1>、ContentProvider是不同应用程序之间进行数据交换的标准api,它以某种uri的形式对外提供数据,允许其他应用程序访问或修改数据,其他应用程序使用ContentResolver根据uri去访问操作指定数据。
<2>、自定义ContentProvider类需要继承ContentProvider基类,并在manifest文件中注册如:
<3>、ContentProvider中要实现的几个方法
<4>、虽然大部分的ContentProvider所操作的数据都来自于数据库,但有时候这些数据也可以来自于文件、XML或网络等其他存储方式。
(2)、URI
<1>、uri格式
如:content://org.crazyit.providers.dictprovider/word/2/type 表示访问word表中id(主键)为2的type字段
<2>、uri工具类
1)、将字符串转成uri
2)、UriMatcher工具类
3)、ContentUris工具类
(3)、ContentResolver
<1>、使用步骤:context.getContentResolver()获取ContentResolver对象后,可调用ContentResolver的如下方法
注意:
(4)、contentObserver
contentObserver用于监听contentProvider提供的数据是否被改变,并作出响应。