ContentProvider介绍
来源:互联网 发布:手机版淘宝类目的修改 编辑:程序博客网 时间:2024/05/18 16:55
一、什么是ContentProvider
ContentProvider把应用中的数据共享给其他应用访问,其他应用可以通过ContentProvider对指定应用中的数据进行操作。
ContentProvider分为系统的和自定义的,系统的也就是例如联系人,图片等数据。
ContentProvider向我们提供了我们在应用程序之前共享数据的一种机制,而我们知道每一个应用程序都是运行在不同的应用程序的,数据和文件在不同应用程序之间达到数据的共享不是没有可能,而是显得比较复杂,而正好Android中的ContentProvider则达到了这一需求,比如有时候我们需要操作手机里的联系人,手机里的多媒体等一些信息,我们都可以用到这个ContentProvider来达到我们所需。
***Uri介绍
为系统的每一个资源给其一个名字,比方说通话记录。
1)、每一个ContentProvider都拥有一个公共的URI,这个URI用于表示这个ContentProvider所提供的数据。
2)、Android所提供的ContentProvider都存放在android.provider包中。 将其分为A,B,C,D 4个部分:
A:标准前缀,用来说明一个Content Provider控制这些数据,无法改变的;"content://"
B:URI 的标识,用于唯一标识这个ContentProvider,外部调用者可以根据这个标识来找到它。它定义了是哪个Content Provider提供这些数据。对于第三方应用程序,为了保证URI标识的唯一性,它必须是一个完整的、小写的类名。这个标识在 元素的 authorities属性中说明:一般是定义该ContentProvider的包.类的名称
C:路径(path),通俗的讲就是你要操作的数据库中表的名字,或者你也可以自己定义,记得在使用的时候保持一致就可以了;"content://com.bing.provider.myprovider/tablename"
D:如果URI中包含表示需要获取的记录的ID;则就返回该id对应的数据,如果没有ID,就表示返回全部; "content://com.bing.provider.myprovider/tablename/#" #表示数据id。
PS:
路径(path)可以用来表示我们要操作的数据,路径的构建应根据业务而定,如下:
1、要操作person表中id为10的记录,可以构建这样的路径:/person/10
2、要操作person表中id为10的记录的name字段, person/10/name
3、要操作person表中的所有记录,可以构建这样的路径:/person
4、要操作xxx表中的记录,可以构建这样的路径:/xxx
5、当然要操作的数据不一定来自数据库,也可以是文件、xml或网络等其他存储方式,如下:
要操作xml文件中person节点下的name节点,可以构建这样的路径:/person/name
6、如果要把一个字符串转换成Uri,可以使用Uri类中的parse()方法,如下:Uri uri = Uri.parse("content://com.bing.provider.personprovider/person")
- ContentProvider介绍
- ContentProvider介绍
- ContentProvider介绍
- ContentProvider介绍---电话本
- Android ContentProvider的介绍
- Android ContentProvider的介绍
- Android ContentProvider 详细介绍
- ContentProvider详细介绍
- ContentProvider介绍(一)
- Android ContentProvider介绍
- ContentProvider 和 Uri 介绍
- Android ContentProvider的介绍
- Android ContentProvider的介绍
- 一、ContentProvider介绍
- Android之---ContentProvider介绍
- ContentProvider内容介绍(1)
- ContentProvider的实例基础介绍
- ContentProvider详细介绍(附实例源码)
- AES加密
- Android 端“被挤下线”功能的实现
- CDN/智能DNS原理和应用
- 计划任务crontab的一些实例
- Codeforces-813c双bfs
- ContentProvider介绍
- Fresco的简单应用
- 一组数据中1到9中间的数出现的次数
- vue v-for 循环复选框-默认勾选第一个的实现方法
- 读
- 霍夫变换直观原理
- ios11崩溃
- 第7章 添加Web界面
- pythorch 学习小记