数据存储(五种方式三)-ContentProvider

ContentProvider

1.在android中,每一个应用程序的数据都是采用私有的形式进行操作的,不管这些数据是采用文件还是数据库保存,都不能被外部应用程序所访问。在android中提供了ContentProvider,主要功能是将不同的应用程序的数据操作标准统一起来,并且将各个应用程序的数据操作标准表明给其他应用程序,这样一个应用程序的数据就可以被外部所操作。

在使用ContentProvider类进行数据操作时,都采用Uri的形式进行数据的交换,【一个Uri的地址格式为:content://

org.lxh.demo.membercontentprovider/member/3

此Uri由3部分组成:

(1)A部分(协议):ContentProvider(内容提供者)访问协议,已经由android规定为content://

(2)B部分(主机名或Authority):用于唯一识别ContentProvider,外部调用者可以根据该标识来找到它,一般都为“包.类”名称,但是要使用小写字母的形式表示。

(3)C部分(Path):访问的路径,一般为要操作的数据表的名称,根据操作的不同可以分为如下几种情况。

a.访问全部数据;content://Authority/Path

b.根据ID访问数据:content://Authority/Path/ID

c.访问某一条记录的某个字段:content://访问标识/表名称/ID/列名称

2.ContentProvider在程序操作中提供的是一个操作的标准,要想依靠此标准进行数据操作,必须使用android.content.ContentResolver类完成。由于ContentResolver是一个抽象类,所以要想取得ContentResolver类的实例化对象进行操作,要使用android.app.Activity类中的方法。

3.Uri的辅助操作类:ContentUris、UriMatcher类。

开发ContentProvider程序


你可能感兴趣的:(数据存储)