四大组件 — ContentProvider
来源:互联网 发布:淘宝情趣用品店铺名 编辑:程序博客网 时间:2024/04/30 07:24
自定义内容提供者
内容提供方
1. 创建 内容提供者
1. 创建一个类,继承并实现 ContentProvider抽象类
class MyProvider extends ContentProvider{
2. 实现 其下的抽象方法
1. 创建方法
onCreate
一般 在onCreate方法中,获 数据库对象,从而可以实现 增 | 删 | 改 | 查等方法
2. 增加 | 删除 | 修改 | 查询
insert / delete / update / query / getType....
2. 注册 内容提供者
与Activity同一个级别。
在 清单文件中注册内容提供者
<provider
android:name="com.example.unit6_cp_baidump3.MyProvider"
android:authorities="com.baidu.mp3"
android:exported="true">
</provider>
name: 类 路径 内容提供者全类名路径
authorities:Uri 域名 应用在手机中的唯一标识
exported:权限 true | false 是否允许外部应用访问
那么!在内容提供者方 中 如何对所要操作的表进行区分呢?
内容提供方:如何区分Uri操作哪张表?
1. 创建 UriMatcher成员对象
设置 私有 静态 常量 uriMatcher对象
private static final UriMatcher matcher=new UriMatcher( UriMatcher.NO_MATCH ):
2. 书写 静态代码块 与 添加与各表对应的Uri数据
static{
matcher.add("域名","表名1",int 标记);
matcher.add("域名","表名2",int 标记);
}
3. 实现 对Uri数据区分的操作
匹配并获取 Uri标记,通过 增 | 删 | 改 | 查 方法中的uri进行判断。
int 标记=matcher.match(uri):
switch(标记)
内容获取方
1. 获取 内容解析器
在 内容获取类中 获取内容解析器
ContentResolver resolver = getContentResolver();
2. 设置 统一资源定位Uri对象
Uri url=Uri.parse(String str);
参数:content:// 域名/数据表名
如:"content://com.bear.rikao/users"
-------------------------------------------------------------------------------------------------------
Uri 统一资源定位
在实际应用中,我们将指定对某张表进行数据操作,那么如何指定这张表呢?
我们通过 在该Uri域名后 添加指定性的 数据,从而进行区分。
如:
content://域名/指定表名
-------------------------------------------------------------------------------------------------------
3. 通过 内容解析器 调用 增删改查等方法
resolver.insert.......
内容提供方
1. 创建 内容提供者
1. 创建一个类,继承并实现 ContentProvider抽象类
class MyProvider extends ContentProvider{
2. 实现 其下的抽象方法
1. 创建方法
onCreate
一般 在onCreate方法中,获 数据库对象,从而可以实现 增 | 删 | 改 | 查等方法
2. 增加 | 删除 | 修改 | 查询
insert / delete / update / query / getType....
2. 注册 内容提供者
与Activity同一个级别。
在 清单文件中注册内容提供者
<provider
android:name="com.example.unit6_cp_baidump3.MyProvider"
android:authorities="com.baidu.mp3"
android:exported="true">
</provider>
name: 类 路径 内容提供者全类名路径
authorities:Uri 域名 应用在手机中的唯一标识
exported:权限 true | false 是否允许外部应用访问
那么!在内容提供者方 中 如何对所要操作的表进行区分呢?
内容提供方:如何区分Uri操作哪张表?
1. 创建 UriMatcher成员对象
设置 私有 静态 常量 uriMatcher对象
private static final UriMatcher matcher=new UriMatcher( UriMatcher.NO_MATCH ):
2. 书写 静态代码块 与 添加与各表对应的Uri数据
static{
matcher.add("域名","表名1",int 标记);
matcher.add("域名","表名2",int 标记);
}
3. 实现 对Uri数据区分的操作
匹配并获取 Uri标记,通过 增 | 删 | 改 | 查 方法中的uri进行判断。
int 标记=matcher.match(uri):
switch(标记)
内容获取方
1. 获取 内容解析器
在 内容获取类中 获取内容解析器
ContentResolver resolver = getContentResolver();
2. 设置 统一资源定位Uri对象
Uri url=Uri.parse(String str);
参数:content:// 域名/数据表名
如:"content://com.bear.rikao/users"
-------------------------------------------------------------------------------------------------------
Uri 统一资源定位
在实际应用中,我们将指定对某张表进行数据操作,那么如何指定这张表呢?
我们通过 在该Uri域名后 添加指定性的 数据,从而进行区分。
如:
content://域名/指定表名
-------------------------------------------------------------------------------------------------------
3. 通过 内容解析器 调用 增删改查等方法
resolver.insert.......
0 0
- 四大组件 — ContentProvider
- 四大组件 — ContentProvider
- 四大组件 — ContentProvider
- 四大组件 — ContentProvider
- 四大组件 — ContentProvider
- 四大组件——ContentProvider
- Android四大组件—ContentProvider
- Android四大组件—ContentProvider
- Android四大组件—ContentProvider
- Android四大组件——ContentProvider
- 安卓四大组件——ContentProvider
- 四大组件 — ContentProvider 内容提供者
- 四大组件之ContentProvider
- 四大组件之ContentProvider
- Android四大组件-ContentProvider
- Android四大组件-ContentProvider
- 四大组件之ContentProvider
- 四大组件之ContentProvider
- 立方体动画制作------方法二
- LeetCode#1. Two Sum
- C++中常问道一些基本概念整理
- CSS块级元素和行内元素
- opencv入门学习之六:拉普拉斯Laplacian变换锐化图像
- 四大组件 — ContentProvider
- shoucang
- 4段代码了解Java虚拟机虚方法和非虚方法的分派
- 取球问题
- 《R语言入门》如何在Windows下安装R语言编程环境
- 2-2 Time类的定义
- window.location.hash属性介绍
- mybatis学习小结(四)
- 四大组件 — ContentProvider