Android学习19--使用ContentProvider实现数据共享

本文详细介绍了Android中的ContentProvider,它是不同应用间数据共享的标准API。通过ContentProvider,应用可以实现CRUD操作,如插入、删除、更新和查询数据。此外,还讲解了UriMatcher和ContentObserver的使用,以及如何监听ContentProvider数据的变化。
摘要由CSDN通过智能技术生成

1、数据共享标准:ContentProvider简介

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

ContentProvider也是Android应用的四大组件之一,与Activity、Service、BroadcastReceiver相似,它们都需要在AndroidManifest.xml文件中进行配置。

(1)开发一个ContentProvider的步骤:

a、定义自己的ContentProvider类,该类需要继承Android提供的ContentProvider基类。

b、在AndroidManifest.xml文件中注册这个ContentProvider,就像注册Activity一样,注册ContentProvider时需要为它绑定一个域名。向Android系统中注册ContentProvider只要在<application.../>元素下添加如下子元素:

<provider  android:name=“.DictProvider”   android:authorities=“org.lxj.provider.dictprovider”/>//其中name属性指定ContentProvider类,authorities就相当于为该ContentProvider指定域名。

当我们想Android系统注册了ContentProvider之后,其它应用程序就可通过该Uri来访问DictProvider所暴露的数据了

那么DictProvider如何暴露它所提供的数据呢?其实很简单,应用程序对数据的操作无非就是CRUD操作,因此DictProvider除了需要继承ContentProvider之外,还需要提供如下几个方法:

a、public boolean onCreate():该方法在ContentProvider创建后会被调用,当其它应用程序第一次访问ContentProvider时,该ContentProvider会被创建出来,并立即回调该onCreate()方法。

b、public Uri  insert(Uri uri,ContentValues  values):根据Uri插入values对应的数据。

c、public int delete(Uri uri,String selection,String[ ]  selectionArgs):根据Uri删除select条件所匹配的全部记录。

d、public int  update(Uri uri,ContentValues  values,String selection,String[ ] selectionArgs):根据Uri修改select条件所匹配的全部记录。

e、public Cursor query(Uri uri,String

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值