Content Provider的主要作用:
1、提供了访问数据的统一接口;
2、使数据在不同的应用程序间实现共享
主要内容:
1、ContentProvider基本概念
1、ContentProvider提供为存储和获取数据提供了统一的接口(封装了数据的存取)
数据模型:ContentProvider使用表的形式来组织数据
2、使用ContentProvider可以在不同的应用程序之间共享数据
3、Android为常见的一些数据提供了ContentProvider(包括音频,视频,图片和通讯录等待)。
2、URI
1、每一个ContentProvider都拥有一个公共的URI,这个URI用于表示这个ContentProvider所提供的数据。
2、Android所提供的ContentProvider都存放在android.provider包当中。
public static final Uri CONTENT_URI = Uri.parse("content://com.example.codelab.transportationprovider");
3、ContentProvider实现方法
1、query()
2、insert()
3、update()
4、delete()
5、getType() // 得到数据类型
6、onCreate() // 创建时的回调函数
实现ContentProvider的过程:// 一般不用自己实现
1、定义一个CONTENT_URI常量
2、定义一个类,继承ContentProvider
3、实现query,insert,update,delete,getType和onCreate方法
4、在AndroidManifest.xml当中进行声明
实例:TestCP
mypack.cp.CPActivity.java
mypack.cp.FirstContnetProvider.java // 实现ContentProvider的对象
mypack.cp.FirstProviderMetaData.java // 定义FirstContnetProvider需要的常量
mypack.sqlit.db.DatabaseHelper.java
<application>
<provider android:name="mypack.cp.FirstContentProvider"
android:authoritier="mypack.cp.FirstconentProvider" />
</application>
1、提供了访问数据的统一接口;
2、使数据在不同的应用程序间实现共享
主要内容:
1、ContentProvider基本概念
1、ContentProvider提供为存储和获取数据提供了统一的接口(封装了数据的存取)
数据模型:ContentProvider使用表的形式来组织数据
2、使用ContentProvider可以在不同的应用程序之间共享数据
3、Android为常见的一些数据提供了ContentProvider(包括音频,视频,图片和通讯录等待)。
2、URI
1、每一个ContentProvider都拥有一个公共的URI,这个URI用于表示这个ContentProvider所提供的数据。
2、Android所提供的ContentProvider都存放在android.provider包当中。
public static final Uri CONTENT_URI = Uri.parse("content://com.example.codelab.transportationprovider");
3、ContentProvider实现方法
1、query()
2、insert()
3、update()
4、delete()
5、getType() // 得到数据类型
6、onCreate() // 创建时的回调函数
实现ContentProvider的过程:// 一般不用自己实现
1、定义一个CONTENT_URI常量
2、定义一个类,继承ContentProvider
3、实现query,insert,update,delete,getType和onCreate方法
4、在AndroidManifest.xml当中进行声明
实例:TestCP
mypack.cp.CPActivity.java
mypack.cp.FirstContnetProvider.java // 实现ContentProvider的对象
mypack.cp.FirstProviderMetaData.java // 定义FirstContnetProvider需要的常量
mypack.sqlit.db.DatabaseHelper.java
<application>
<provider android:name="mypack.cp.FirstContentProvider"
android:authoritier="mypack.cp.FirstconentProvider" />
</application>