-
「使用ContentProvider存储数据」
-
网络存储数据
咱们今天就来学习一下ContentProvider。作为Android四大巨头之一的他有点名不副实,因为在一般的开发过程中,使用的次数比较少。大部分应用的数据缓存用SharedPreferences就能搞定了。
「ContentProvider(数据提供者)是应用程序之间共享数据的一种接口机制,是一种更为高级的数据共享方法。」
ContentProvider可以指定需要共享的数据,而其他应用程序则可以在不知道数据来源、路径的情况下,对共享数据进行增删改查等操作。
在Android系统中,许多Android系统内置的数据也是通过ContentProvider提供给用户使用,例如通讯录、音视频文件和图像文件等。
一、什么是ContentProvider
-
ContentProvider是Android的四大组件之一,以标准化的方式在Android 应用间共享数据。
-
ContentProvider封装的数据存储以及增删改查等,并且必须实现一个对外统一的接口(Uri)。
二、什么是Uri
Uri(通用资源标识符 Universal Resource Identifer),代表数据操作的地址,每一个ContentProvider都会有唯一的地址。
ContentProvider使用的Uri语法结构如下:
content://authority/data_path/id
-
「content://」 是通用前缀,表示该Uri用于ContentProvider定位资源。
-
「authority」 是授权者名称,用来确定具体由哪一个ContentProvider提供资源。因此一般authority都由类的小写全称组成,以保证唯一性。
-
「data_path」 是数据路径,用来确定请求的是哪个数据集。
-
「id」 是数据编号,用来请求单条数据。如果是多条这个字段忽略。
样例:
content://com.scc.userprovider/user多条
content://com.scc.userprovider/user/10单条
三、什么是ContentResolver
-
ContentResolver是数据调用者ÿ