ContentProvider组件的使用

目录
1.概念讲解
2.示例(访问手机通讯录)

1.概念讲解
(1)ContentProvider的概述:
当我们想允许自己的应用数据允许别的应用进行读取操作,我们可以让我们的App实现ContentProvider类,同时注册一个Uri,然后其他应用只要使用ContentResolver根据Uri就可以操作我们的App中的数据了!而数据库不一定是数据库,也可能是文件,xml,或者其他,但是SharePreference使用基于数据库模型的简单表格来提供其中的数据!

(2)ContentProvider的执行原理
在这里插入图片描述
(3)URI简介:
专业名词叫做:通用资源标识符,我们也可以类比为网页的域名,就是定位资源所在路径。例如:
Uri uri = Uri.parse(“content://com.andriod.contacts/raw_contacts”);
content:协议头,这是规定的,就像http,ftp等一样,而ContentProvider规定的是content开头的,接着是provider所在的全限定类名。
com.andriod.contacts代表资源部分,如果想访问com.andriod.contacts所有资源,后面就不用写了。
raw_contacts访问的是com.andriod.contacts资源中id为 raw_contacts的记录。

2.示例(访问手机通讯录)
(1)打开android studio新建一个项目,创建一个ContentProviderActivity.java文件和layout.xml文件,如图:
在这里插入图片描述
layout.xml文件
(2)写入两个按钮

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layo
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值