ContentProvider学习心得(中)--通过单元测试的方式完成对通讯录内容的操作

本文通过单元测试详细阐述如何使用ContentProvider操作Android通讯录数据,重点关注data、raw_contacts和mimetypes三个表,讲解了它们之间的关联以及如何添加记录,包括单独添加和批量添加联系人信息的方法。

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

在基本了解了对内容提供者的操作之后,可以通过几个小例子来训练自己的所学。在很多应用中都需要访问通讯录,因此在这里我们通过单元测试和通讯录的内容提供者完成对通讯录中数据的操作,在通讯录数据库中有很多表,在这个例子中我们需要关注的是data,raw_contacts,mimetypes这三个表,data表格raw_contacts两个表通过raw_contact_id字段关联,关于表中的字段,在通讯录URI详解中有介绍,mimetypes这个表指定data表中,每一条记录所对应的含义,例如“vnd.android.cursor.item/name”指定了data表中相应行记录的是联系人姓名的相关信息。同时需要指出的是,在添加记录的时候,需要指定添加的每条记录类型是什么,因此需要ContentValues中绑定mimetype字段,其中的值可以在mimetypes表中查询,在将记录插入到数据库之后,数据库会自动的根据mimetype的值设定data中记录的mimetype_id。

下面一共有个测试方法,在第一种测试方法中,联系人的每一个信息都是分开添加的,第二种测试方法中,采用批处理的方法来完成联系人的添加。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值