浏览 9570 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-01-12
最后修改:2011-01-12
其实联系人分组实现原理是: 根据Data.MIMETYPE为GroupMembership类型,data1中的组id来进行分组。
设置ContactsContract.Data.CONTENT_URI中的ContactsContract.Data.MIMETYPE 为ContactsContract.CommonDataKinds.GroupMembership.CONTENT_ITEM_TYPE类型,data1字段为某一分组的组ID,该值可查询ContactsContract.Groups.CONTENT_URI(该表保存了各分组的组_id,组名称title等分组信息)得到。
例如查询具有某一分组的所有联系人的ContactsContract.RawContacts._ID,代码如下
public static final String[] RAW_PROJECTION = new String[]{ ContactsContract.Data.RAW_CONTACT_ID, }; public static final String RAW_CONTACTS_WHERE = ContactsContract.CommonDataKinds.GroupMembership.GROUP_ROW_ID +"=?" +" and " + ContactsContract.Data.MIMETYPE+ "=" + "'" + ContactsContract.CommonDataKinds.GroupMembership.CONTENT_ITEM_TYPE + "'" ; //具有同一组id的原始联系人的id
Cursor mMemberRawIds =rc.query(URI, RAW_PROJECTION, RAW_CONTACTS_WHERE, new String[]{""+groupId}, "data1 asc"); 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-03-16
最后修改:2011-03-16
如何获取组名? 看了下表结构,title的组名不正确,display_title才是正确的,但是Groups找不到相关字段。
|
|
返回顶楼 | |
发表时间:2011-03-17
jakend 写道 如何获取组名? 看了下表结构,title的组名不正确,display_title才是正确的,但是Groups找不到相关字段。
可是问题是我用的N1手机,联系人中没有分组功能啊,只能设置一个“收藏”,敢问兄台,分组怎样设置?我打开数据库看到里面的title列根本就是空的,甚至整个groups表都是空的…… |
|
返回顶楼 | |
发表时间:2011-03-22
zhaopian16 写道 jakend 写道 如何获取组名? 看了下表结构,title的组名不正确,display_title才是正确的,但是Groups找不到相关字段。
可是问题是我用的N1手机,联系人中没有分组功能啊,只能设置一个“收藏”,敢问兄台,分组怎样设置?我打开数据库看到里面的title列根本就是空的,甚至整个groups表都是空的…… 每个手机都不一样的。。。呵呵。 我的是htc hero |
|
返回顶楼 | |