ContentProvider组件的使用

本文介绍了Android中的ContentProvider组件,用于实现应用间的数据共享。首先讲解了ContentProvider的概念,包括其作为数据共享桥梁的作用以及URI的工作原理。接着,通过一个实例展示了如何创建一个ContentProvider并访问手机通讯录,包括获取读写权限、布局文件设置、Java代码实现以及添加和获取联系人信息的操作步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录
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"
    andr
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值