关于 android 联系人

Android的联系人采用SQL-Lite数据库存储,数据库文件在:data/data/com.android.providers.contacts/database下contact2.db,主要由rawcontacts,contacts,data3个表格存储。
 其中rawcontacts和contactc存储了联系人的基本信息,而联系人的电话、邮件、地址等等信息均存储在data表格中。RawContacts中存储了联系人的名片信息,包括联系人的显示名称、是否删除、账号信息等。Contacts中存储的信息和RawContacts中的差不多。两个表所存的数据相同,但记录条数可能不同,一般以RawContacts为准;Contacts表可能含有被标记删除的记录。另外,android有区分账户,除了本地账户联系人外,可能还有小米账户、微信账户等。若需要仅取本地账户,需要对各厂商手机进行适配,因为各厂商手机本地账户名不同。

 Android联系人支持一个字段的无限扩展,比如一个联系人的电话(手机)字段可以有多个。
 Android在data表格中存储这些信息,每个字段信息保存为一条记录,通过contact_id,mimetype来标识哪个联系人以及该记录存储的信息为哪种信息。
data1~data15共15个列来存储一个字段信息所需要的所有值,包括字段值,字段类型,字段label等。
Data1~data15中一定会用的值为data1(字段的值),data2(字段的类型),有时也可自定义。
如果一个联系人添加了10个字段的信息,那么在Data表格中对应该联系人的就有10条记录信息。
Mimetype表示字段类型,有如下几种类型:
StructuredName.CONTENT_ITEM_TYPE   名字(含姓氏、中间名、名称等)
Phone.CONTENT_ITEM_TYPE        电话(手机、住宅、办公电话等)  
Email.CONTENT_ITEM_TYPE       电子邮件(个人、公司等)  
Photo.CONTENT_ITEM_TYPE       头像  
Organization.CONTENT_ITEM_TYPE     组织(含公司、部门等) 
Im.CONTENT_ITEM_TYPE       即时消息(QQ/MSN等)
Nickname.CONTENT_ITEM_TYPE    昵称  
Note.CONTENT_ITEM_TYPE      备注   
StructuredPostal.CONTENT_ITEM_TYPE 邮编
GroupMembership.CONTENT_ITEM_TYPE  分组
Website.CONTENT_ITEM_TYPE  网页(个人、公司等) 
Event.CONTENT_ITEM_TYPE   事件(生日等)
Relation.CONTENT_ITEM_TYPE   关系 
SipAddress.CONTENT_ITEM_TYPE  sip地址

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值