ContentProvider

1)、ContentProvider

<1>、ContentProvider是不同应用程序之间进行数据交换的标准api,它以某种uri的形式对外提供数据,允许其他应用程序访问或修改数据,其他应用程序使用ContentResolver根据uri去访问操作指定数据。

<2>、自定义ContentProvider类需要继承ContentProvider基类,并在manifest文件中注册如:

四大基本组件( 3)——ContentProvider

四大基本组件( 3)——ContentProvider


<3>、ContentProvider中要实现的几个方法

四大基本组件( 3)——ContentProvider


四大基本组件( 3)——ContentProvider


<4>、虽然大部分的ContentProvider所操作的数据都来自于数据库,但有时候这些数据也可以来自于文件、XML或网络等其他存储方式。



2)、URI

<1>、uri格式

四大基本组件( 3)——ContentProvider

 如:content://org.crazyit.providers.dictprovider/word/2/type 表示访问word表中id(主键)为2的type字段


<2>、uri工具类

1)、将字符串转成uri

四大基本组件( 3)——ContentProvider

2)UriMatcher工具类

四大基本组件( 3)——ContentProvider

四大基本组件( 3)——ContentProvider

3)ContentUris工具类

四大基本组件( 3)——ContentProvider

四大基本组件( 3)——ContentProvider


(3)、ContentResolver

<1>、使用步骤:context.getContentResolver()获取ContentResolver对象后,可调用ContentResolver的如下方法

四大基本组件( 3)——ContentProvider

注意:

四大基本组件( 3)——ContentProvider


4)、contentObserver

contentObserver用于监听contentProvider提供的数据是否被改变,并作出响应。

四大基本组件( 3)——ContentProvider


四大基本组件( 3)——ContentProvider


四大基本组件( 3)——ContentProvider

相关文章:

  • 2021-09-08
  • 2021-09-04
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-12
  • 2021-08-13
猜你喜欢
  • 2022-01-08
  • 2021-05-19
  • 2021-08-28
  • 2021-05-01
  • 2021-07-16
  • 2021-06-04
相关资源
相似解决方案