先看看谷歌的定义:内容提供者将一些特定的应用程序数据提供给其它应用程序使用,数据可以存储于文件系统、SQLite或其他方式。内容提供者继承于ContentProvider基类,为其它应用程序取用和存储它管理的数据实现了一套标准方法,应用程序不直接调用这些方法,而是使用ContentResolver对象调用它的方法作为替代。ContentResolver可以与任意内容提供者进行会话,与其合作来对所有相关交互通讯进行管理。
这时,其它应用就可以通过该Uri来访问该ContentProvider所暴露的数据了。那Uri究竟是什么呢?
Uri代表了要操作的数据表的绝对路径,它主要包含了两个部分信息:
一个Uri由以下几个部分组成:
例如:content://com.trampcr.contacts/people/5 这个Uri的意思是访问contacts数据中id为5的记录。
将字符串转换成Uri: Uri uri = Uri.parse("content://com.trampcr.contacts/people/5");
ContentProvider的作用是暴露可供操作的数据,其他应用程序通过ContentResolver操作ContentProvider所暴露的数据。
首先获取ContentResolver对象: getContentResolver():获取应用默认的ContentResolver。
接下来通过ContentResolver对象操作数据:
ContentResolver与ContentProvider的关系如下图:
ContentResolver与ContentProvider的关系
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有